Announcement

Collapse
No announcement yet.

SB3Utility Releases and Discussion

Collapse
This is a sticky topic.
X
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • [Tools] SB3Utility Releases and Discussion

    Post anything related to SB3Utility, such as how to use it, requests, bugs, etc.
    Please let me know if I'm missing any links or if you want any links added through PM.
    You might also want to check out Illusion Wizzard & Morpher by darkhound for modding.

    I recommend using the Latest SB3Utility(GUI+Script) Version by enimaroah since I haven't updated SB3Utility in a long while.

    Pre-scripting Versions
    Spoiler

    SB3Utility Source Code: [MF Folder]

    Custom Versions
    SB3Utility_v0.9.18R10 by enimaroah
    SB3UtilityCustom v9.9 by bbas2011
    SB3UtilityAA by darkhound
    SB3Utility with 3D Studio Max + Okino Polytrans DirectX Import/Export by J1327 [Broken link]
    SB3Utility with Skeletal Animation Editing by profundis

    Supports: Battle Raper 2 (partially), Oppai Slider 2, RapeLay, Sexy Beach 3, SchoolMate (Figure/Trial/Retail), Artificial Girl 3 (Welcome/Retail), Digital Girl, Hako (Trial/Retail), SchoolMate Sweets, Esk Mate, @Home Mate (Figure/Trial/Retail), Yuusha (Trial/Retail), Real Girlfriend, SchoolMate 2 (Trial/Retail), Sexy Beach Zero, Characolle AliceSoft/BaseSon/Key (Benchmark/Retail), Artificial Academy (Trial/Retail except jch*.pp)
    3-D Formats: Metasequoia (text import/export, no normals, no skeleton), DirectX (binary & text import / text export), Collada (text import/export), FBX [recommended] (binary & text import / binary export), Ogre (binary export)

    Requires
    - Microsoft Visual C++ 2008 Redistributable Package (different from the editor)
    - .NET Framework 3.5 SP1 (different from the Compact Framework)
    - Latest DirectX 9.0c

    Changelog
    (v0.9.18) [SB3UtilityGlobals modified]
    - Reverted decryption algorithm to v0.9.15. Removed support for the compressed .pp format (jch*.pp)
    (v0.9.17) [SB3UtilityGlobals modified]
    - Fixed opening various .pp formats
    (v0.9.16) [SB3UtilityGlobals modified]
    - Added support for Best Collection and Artificial Academy
    - Fixed editing frame names again
    - Renderer will no longer throw an exception if a bone is missing
    Spoiler
    (v0.9.15)
    - Fixed morph export for .mqo
    - Fixed editing the name of frames that don't have meshes
    (v0.9.14)
    - Fixed importing Collada with matrix transforms and unused vertices
    (v0.9.13) [SB3UtilityGlobals modified]
    - Fixed DBNull errors when removing bones in the Mesh Object Editor
    - Importing Collada with Z-up will now be automatically converted to Y-up
    - Fixed importing Collada from Blender
    - The Editor now shows a selected image if no .xx tab is open
    - Importing .mqo now defaults to the CopyNear method for bones
    - Fixed replacing mesh objects when using the Merge option for a Mesh and added it as an option for Mesh Objects in the Workspace
    (v0.9.12) [SB3UtilityGlobals modified]
    - Fixed showing the number of mesh objects
    - Fixed error checking for bone operations
    (v0.9.11) [SB3UtilityGlobals modified]
    - Changed "Characolle Bench" to "Characolle AliceSoft" for .pp formats
    - Added support for Characolle BaseSon & Key versions and AA Trial (thanks to bbas2011)
    - Added bone operations (by pidey)
    (v0.9.10) [SB3UtilityGlobals modified]
    - Changed "Characolle Bench" to just "Characolle" for .pp formats
    - Collada importer can now parse empty visual scenes
    - Added support for .dxf, .3ds, and .obj
    (v0.9.9)
    - Fixed animations in the Renderer
    - The Object Tree tab in .xa Editors is now hidden since it isn't used
    (v0.9.8)
    - Fixed "Add Animations From XA Tab" not adding animations to the Workspace
    - Added ability to remove Animation Tracks in the Workspace
    - Removed resetting the Diffuse lighting value for the Renderer when opening a .xx file. Also, the value is now saved
    - Fixed the renderer showing exploded meshes for Rapelay and some others
    (v0.9.7) [SB3UtilityGlobals modified]
    - Fixed loading .xx textures in the renderer that aren't .bmp or .tga (thanks to varicham)
    - Replacing a mesh that has a base mesh no longer shows a warning about adjusting unknown data
    - Added a culling option for the renderer. Checked will render one side, and unchecked will render both sides of a face
    - Fixed the crashing when exporting morphs if a child node is selected
    - Fixed Hierarchy conversions between formats (< 4) and (>= 4) in the Workspace
    - Fixed the renderer to use directional lighting
    - Added code for an .xm parser, but it's not used
    (v0.9.6) [SB3UtilityGlobals modified]
    - Added support for SBZ and Characolle Bench (thanks to darkhound)
    - Fixed when the comma is used as the decimal separator in Frame and Bone tabs
    (v0.9.5)
    - Changed Matrix to Translate/Rotate/Scale in Frame and Bone tabs
    (v0.9.4)
    - Fixed memory problem when exporting large animations using DirectX format
    (v0.9.3)
    - Fixed .xx format conversion and merging bone lists when replacing in the Workspace
    (v0.9.2)
    - Added FBX import/export for morphs
    - FBX import will now skip empty animations
    (v0.9.1)
    - Added Add & Remove in the Bone tab
    - Added options for bones when replacing in the Workspace
    - FBX export will now make locators for nodes with no children and groups for nodes with children instead of making them all joints
    - Fixed FBX export for skins
    - Added FBX import
    - Added FBX support for multiple textures in a material. They will be connected as diffuse/ambient/emissive/specular textures even though they may actually be used for different things like normal/bump mapping or animation
    (v0.9.0)
    - Added export for FBX
    (v0.8.27)
    - Fixed saving .sb3uws for .xx Format Type 4-5 (RGF/SM2)
    - Changed the default "Merge" option for Meshes to "No" in the Workspace
    - Changed the default "Copy Hex" option for Hierarchies to "Yes" in the Workspace
    (v0.8.26)
    - Fixed target build to x86 (thanks to ScumSuckingPig). This was only a problem on 64-bit systems
    (v0.8.25)
    - Added support for SM2 Retail (thanks to ScumSuckingPig)
    (v0.8.24)
    - Added support for SM2 Trial (thanks to ScumSuckingPig)
    (v0.8.23)
    - Added .pp format auto-detection for .xa subfiles
    - Fixed saving .sb3uws for RGF
    - Application starts at the default location if offscreen
    (v0.8.22)
    - Fixed renderer aspect ratio for widescreen and dual monitors
    (v0.8.21)
    - Fixed replacing meshes for RGF when it has more vertices than the original
    (v0.8.20)
    - Added support for RGF (thanks to ScumSuckingPig & J1327)
    - Updated MOGRE from 1.4.8 to 1.6.5 beta r49
    (v0.8.19)
    - Added support for Yuusha Retail (thanks to ScumSuckingPig)
    (v0.8.18)
    - All frames used as bones and their children are now exported as joints for Collada
    - Fixed the positions of skinned meshes for Collada export
    (v0.8.17)
    - Added ability to add selected meshes from the Mesh list of the selected .xx Editor tab to the Workspace. If none in the Mesh list are selected, then all of them will be added
    - For replacing mesh normals, there are now options of replacing them (Replace) or keeping the normals of the base mesh object according to vertex order (CopyOrder) or the nearest vertex (CopyNear)
    - Added Morph Lists to "Align Vertices" and "Copy Near Vertex Normals" for the Workspace
    - "Calculate Normals" controls have been moved to a dialog box for the Workspace
    - "Align Vertices" in the Workspace now works similar to "Copy Near Vertex Normals"
    - Added the option to copy normals from the nearest vertex (no threshold) in the Workspace by using a negative threshold in "Copy Near Vertex Normals"
    - Fixed keeping base mesh object normals when replacing meshes
    (v0.8.16)
    - Fixed replacing materials for BR2. Some material RGBA values might still crash BR2, so it's not recommended to do so for that game
    - Fixed showing the Editor's bottom panel for the first opened .xx/.xa file
    - When replacing materials, used texture hex data is now copied if the texture name is the same
    (v0.8.15)
    - Added support for the BR2 character addon
    (v0.8.14)
    - Fixed mesh distortion by some bones for the Renderer
    - Fixed the Renderer when there are animation tracks with different numbers of keyframes
    (v0.8.13)
    - Fixed copying the mesh object unknown field when replacing a base mesh object
    - Fixed texture paths for Collada import
    - Added a "Merge" option for when replacing hierarchies in the Workspace
    - Re-added option to copy the Frame unknown hex for Hierarchies when replacing in the Workspace. The default is on, except for when dragging from the .xx Object Tree
    (v0.8.12)
    - Added partial support for BR2. Read this post for more info
    - When replacing hierarchies from the Workspace, it will always try to copy unknown fields instead of it being optional
    - Fixed keeping backups of base meshes when the hierarchy has been previously replaced. The feature was introduced in v0.8.7
    - The priority of the last auto-detected .pp format upon opening is bumped to the top
    (v0.8.11)
    - Fixed morphs for target meshes with multiple mesh objects
    - Fixed Collada import
    (v0.8.10)
    - When importing a DirectX .x file, unnamed materials with a texture will have the texture name followed by the material index
    - Unskinned meshes now move with animations in the Renderer
    - Added an optional mesh material offset for Hierarchies in the Workspace
    - Improved .pp format auto-detection when the .pp file contains .xx or image files
    - Fixed the animations/morphs already existing error
    (v0.8.9)
    - Fixed restoring "Selected Tab" / "All Open Tabs" settings in the Workspace
    - Fixed saving "Keep Backups" setting
    (v0.8.8)
    - Added preview of morphs to the Renderer. You can preview one morph keyframe per morph clip. Morphed normals aren't shown in the Renderer
    (v0.8.7)
    - When replacing, mesh unknown fields are now copied when the hierarchy with the base mesh has been previously replaced with a hierarchy without the base mesh within the same Workspace
    - Fixed parsing .xa files with multiple morphs of the same name
    (v0.8.6)
    - Fixed Collada export for unskinned meshes
    - Fixed Collada export of unused bones as joints for skinned meshes
    - Added normal calculation with no duplicate vertex detection by setting a negative threshold in the Workspace
    - Added ability to copy normals from close vertices in the Workspace. Read this post for more info
    - Added support for Esk Mate, AHM Figure, and AHM Trial (thanks to ScumSuckingPig)
    (v0.8.5)
    - Fixed removing all previous mesh objects when replacing meshes if not merging
    - Added option for replacing normals in the Workspace for meshes
    - Added export and import for simple morph editing. Read this post for more info
    (v0.8.4)
    - Added PNG, JPG, and DDS texture support
    - Removed check for valid names
    - Fixed incorrect rotations in matrix decomposition
    - Fixed adjusting unknown data for non-zero Mesh Types
    - Fixed displaying 0 as the last weight for unskinned meshes in the Mesh Object Editor. Actual bytes weren't affected
    - Added editor for unknown Hex fields in .xx files
    (v0.8.3)
    - Fixed using Yuusha MIK Trial in the Workspace
    - Fixed using meshes with different .xx formats in the Workspace
    - Fixed adding more skeletal animation clips
    - Fixed adjusting mesh material indices when removing materials
    - Added editor for mesh objects
    (v0.8.2)
    - Fixed mesh replacing
    - Added option to display bones in the Renderer
    (v0.8.1)
    - Fixed auto-detecting .pp format
    (v0.8.0)
    - Added support for SM Sweets, AHM Retail, and Yuusha MIK Trial (thanks to ScumSuckingPig and lauris71)
    - Changed some underlying code structures
    - Changed Collada format to Autodesk FBX v2010.0.2
    - Added support for SJIS filenames in .pp files
    Known Issues
    - Controls aren't locked or synchronized when performing tasks. Don't perform simultaneous tasks like saving again while it's already saving
    - May crash under 64-bit systems
    - When importing Collada into Maya/Max with Autodesk FBX, normals are reset. Exported normals in Collada from Maya/Max are retained when importing in SB3U


    Resources
    .xx File Format (partially outdated) by alessi
    .xx File Format (partially outdated) by RawMonk
    .xa File Format (might be partially outdated) by Alamar
    .vci & .vcs File Formats by Alamar
    .tty File Format by Alamar
    Parser for .xm by Alamar
    Parser for .js3krs by Alamar
    SB3 BotuPlay Cameo Mod Tutorial for SB3Utility v0.4 Pre22 by Alamar
    SB3 Body Accessory v6 Mod Tutorial for SB3Utility v0.4b Pre5 by Alamar
    SB3 Kokonoe Rin (SaYaKa Project) Mod Tutorial for SB3Utility v0.7.17 by Alamar
    Modding Club Tutorial Thread
    Various Posts About Transparency compilation by Sinbad
    Modding Digital Girl Rin by mariokart64n
    Utilizing .sfd Files by trogdor0071
    SB3U Vertex Options Explained by darkhound
    Last edited by Inquisitor; 04-19-2014, 07:00 AM. Reason: Add prefix

  • The splitting is processed before everything else mesh related. And if the mesh is prepared by the 3d editor with material-faces association matching the UV-islands then Sb3UGS should find nothing to duplicate after the splitting.

    Edit:
    Checked and success!

    If worked as described above. One mesh with morphs and three UV-islands and faces assigned according to these islands, and the splitting in Sb3UGS prevented the welded ("Merge with 0 distance") mesh from getting additional vertices. The morphs kept being valid.
    Last edited by enimaroah; 01-20-2018, 12:14 PM.

    Comment


    • Neerhom
      Neerhom commented
      Editing a comment
      This does sound like a valid workaround for folks whose 3d editors doesn't allow for easy splitting UV islands. Though that can get a bit of an issue if number of UV islands is somewhat high. And there is always Blender, which allows for easy splitting and preservation of normals, tee hee...
      Speaking of Blender, it would appear that the v1.9.6 has issues with reading any morphs from FBX exported by Blender (2.79) as they simply don't appear in the workspace.

  • Blender 2.79 exports the morphs fine for unskinned meshes, but not for skinned ones!?

    Comment


    • Neerhom
      Neerhom commented
      Editing a comment
      It would appear so, as I've only tested this with skinned mesh. Now that you mention, i can't say with certainty that this only occurred with new version of SB3UGS as i didn't test it for previous ones.

  • This behaviour is related to the sequence I mentioned at the beginning. Need to fix this, probably tomorrow.

    Comment


    • SB3UGS_v1.9.7 has the fix for the missing morphs in v1.9.6 discussed above. Thanks to Neerhom!

      Download:
      github repository, 1fichier

      Sources:
      github repository, 1fichier

      Comment


      • SB3UGS_v1.9.8
        • Fix for RemoveBone which made the skin invalid for Unity
        • Added SHIFT-Clicking a node in the ObjectTree expands/collapses childs
        • Changed MonoScripts are reused by Name/Classname instead of duplicated
        • Fix for Unity 5.5.0+ invalid AssetRefIndex in AssetCabinet.TypeDefinition when transporting MonoBehaviours

        Download:
        github release

        Sources:
        github release

        Comment


        • SB3UGS_v1.9.9
          • Fix for merging MonoBehaviour from root frame into another Animator in the same file
          • Added keeping references to MeshRenderer and SkinnedMeshRenderer in MonoBehaviours in MergeMonoBehaviour

          The fix is relevant for all Unity games, while the addition for MeshRenderer and SkinnedMeshRenderer is convenient for UVNB MonoBehaviours in PH (making top clothes).

          Download:
          github release

          Sources:
          github release

          Comment


          • enimaroah

            Are there known issues with copying monobehaviours from other assets to a new one?

            Today I tried drag and dropping to/from the workspace a Dynamic Bone MB, and it caused the game to crash with an access violation (using SB3UG 1.9.9). Exporting the asset bundle directly from Unity was the only way I was able to make the Dynamic Bone MB work.

            The file I was using as a source was ca_head_hs00, the animator p_acs_head_03_00.
            My blog, you can find my mods there too.

            Comment


            • Thank you roy12 for your report.

              I transported the DynamicBone MB you had given as example into a ca_arm_hs00 using the Workspace, and the game didn't crash. So the problem can not lie in the source file, nor in a file which doesn't have that MonoScript.

              But the problem could lie in a file which was formerly created with Sb3UGS and already has such a MonoScript in it. You could try to remove all MonoBehaviours which are referencing this MonoScript, and then the MonoScript itself before transporting the source MonoBehaviour again.

              Could you make the destination file (before the transport of the MB) available to me?

              Comment


              • enimaroah I have some problem importing bc7 textures, bc7 created by Intel Texture work gives error on import. But export then re-import a bc7 texture works fine.

                Comment


                • @enimaroah

                  Ugh, sorry.

                  I deleted the old files and I can no longer get it to crash, even following the same steps as last time. Sorry about that, I'm just going to assume I was doing something wrong or my RAM/disk is having issues.

                  The new Assetbundle was created directly with Unity Editor though, so you can rest assured it wasn't a file created by SB3UG.
                  My blog, you can find my mods there too.

                  Comment


                  • Originally posted by plasticmind View Post
                    enimaroah I have some problem importing bc7 textures, bc7 created by Intel Texture work gives error on import. But export then re-import a bc7 texture works fine.
                    Hello plasticmind, thanks for your report!

                    That is so by intention. BC7 texture format is not to be used in general:
                    When I got a [PH][Swim][SluttyBikini][roy12][v1.0].7z from roy12 I implemented partial support for BC7. Sb3UGS can preview and export BC7 format, but immediately changes the format to BC5. So that you can import that converted texture and replace it in order to get rid of the BC7 texture. But you cant get a BC7 into the game files with Sb3UGS currently.




                    roy12 ah, an original file. Hm, too bad that you deleted it.

                    Comment


                    • SB3UGS_v1.9.11
                      • Fix for destroying references to Material textures not being Texture2D or Cubemap when loading Animator - thanks to cur144
                      • Added awareness of RenderTexture in texture selection of Material editor


                      Download:
                      github repository

                      Sources:
                      github repository

                      Comment


                      • I've got a question/suggestion regarding
                        Code:
                        Sound resource must be placed into a folder with the original folder structure!
                        Would it be possible to promt a user to input path to *_Data folder so SB3UGS could derive folder structure from it, instead of having the workfile inside *_Data? I'm pretty sure there is a good reason for this being the way it is, but can't say having workfile inside *_Data is convenient.
                        Making futa/yuri master model
                        CM3D to CM3D2 mod porting
                        Lesbian dual vibrator fix
                        Furry maid set
                        CM3D2.CategoryUnlocker
                        COM3D2.ModLoader
                        COM3D2.CategoryCreator

                        Comment


                        • Such a file needs to be inside the game to be used from it. You say, it would be more convenient to give the path and to copy the file yourself than working in the path right from the start?

                          I see only one inconvience currently, and that is when the backups made by Sb3UGS are also considered from the game and need to be moved or deleted. But until now I had seen this problem only in one game and only in one folder.

                          Surely, it would be possible but I dont see the advantage.

                          Comment


                          • Originally posted by enimaroah View Post
                            Such a file needs to be inside the game to be used from it. You say, it would be more convenient to give the path and to copy the file yourself than working in the path right from the start?

                            I see only one inconvience currently, and that is when the backups made by Sb3UGS are also considered from the game and need to be moved or deleted. But until now I had seen this problem only in one game and only in one folder.

                            Surely, it would be possible but I dont see the advantage.
                            The convenience, at least from my perspective, is when I've got a folder for each of my projects, and if SB3UGS wants folder structure i simply give it path from which it can derive it, so it could save the file directly to my folder project without creating anything inside _Data.
                            Making futa/yuri master model
                            CM3D to CM3D2 mod porting
                            Lesbian dual vibrator fix
                            Furry maid set
                            CM3D2.CategoryUnlocker
                            COM3D2.ModLoader
                            COM3D2.CategoryCreator

                            Comment

                            Working...
                            X