|
|
| (13 intermediate revisions by 3 users not shown) |
| Line 1: |
Line 1: |
| Talk page archives: [[/Archive1|#1]] | | Talk page archives: [[/Archive1|#1]] |
| | |
| | ==Page improvement== |
| | Shouldn't there be an animation section which includes the options -anim-body, -anim-merge and -blender? --[[User:Paradox-01|paradox-01]] ([[User talk:Paradox-01|talk]]) 00:24, 16 May 2022 (CEST) |
| | :Yes, it's odd that -anim-body and -anim-merge are not documented here, someone should do something about that. <s>-blender arguably does not exist yet (it's in geyser's upcoming 1.0 release and is mentioned on the [[OniSplit/WIP]] page).</s> My bad, -blender was added in 0.9.99.2. --[[User:Iritscen|Iritscen]] ([[User talk:Iritscen|talk]]) 01:05, 16 May 2022 (CEST) |
| | |
| | ==If OniSplit refuses to be used== |
| | delete file at AE/Tools/OniSplit.exe.config --[[User:Paradox-01|Paradox-01]] 18:00, 28 June 2020 |
| | |
| | ==Smaller version steps possible== |
| | AssemblyInfo.cs |
| | //overwrite product version with 5 possible numbers |
| | [assembly: AssemblyInformationalVersion("0.9.99.0.1")] |
| | |
| | Utils.cs |
| | #if NETCORE |
| | version = typeof(Utils).GetTypeInfo().Assembly.GetName().Version.ToString(); |
| | #else |
| | //version = typeof(Utils).Assembly.GetName().Version.ToString(); |
| | Assembly assembly = Assembly.GetExecutingAssembly(); |
| | FileVersionInfo fileVersionInfo = FileVersionInfo.GetVersionInfo(assembly.Location); |
| | version = fileVersionInfo.ProductVersion; |
| | #endif |
| | |
| | OniSplit -version |
| | 0.9.99.0.1 |
| | |
| ==OniSplit version control - getting there...== | | ==OniSplit version control - getting there...== |
| The SVN version of OniSplit is currently labeled 0.9.99 (same as the source received from Neo), and at this point it is different from the non-synced 0.9.99.2 that I distributed through EdT. | | The SVN version of OniSplit is currently labeled 0.9.99 (same as the source received from Neo), and at this point it is different from the non-synced 0.9.99.2 that I distributed through EdT. |
| Line 10: |
Line 36: |
| List of bugfixes and improvements planned for 0.9.99.3 (feel free to add to the list if I forgot something) | | List of bugfixes and improvements planned for 0.9.99.3 (feel free to add to the list if I forgot something) |
| *some running/walking anims end up upside-down after reimported into Oni | | *some running/walking anims end up upside-down after reimported into Oni |
| *-extract:dae -noanim -blender used on a TTRBS, make sure the output .dae file has a TRBS prefix | | *-extract:dae -noanim -blender used on a TRBS, make sure the output .dae file has a TRBS prefix |
| *stairs_markers.dae not imported properly? | | *stairs_markers.dae not imported properly? (and more generally secondary/auxiliary .dae files not imported for levels?) |
| *TRAM export: support writing of sparse keyframe data (as in Oni), as opposed to writing rotations for ''every'' frame (interpolated) | | *TRAM export: support writing of sparse keyframe data (as in Oni), as opposed to writing rotations for ''every'' frame (interpolated) |
| *maybe allow the export of named TRCM (without material) | | *maybe allow the export of named TRCM (without material) |
| *TGA transparency bug? (not-yet-confirmed as a bug; supposedly happens only for SketchUp-made levels; see below) | | *TGA transparency bug? (not-yet-confirmed as a bug; supposedly happens only for SketchUp-made levels; see below) |
| | *various SNDD glitches (inconsistent handling of ADPCM headers) |
| | |
| | ---- |
| | When will you update the repo? --[[User:Paradox-01|paradox-01]] ([[User talk:Paradox-01|talk]]) 16:40, 13 April 2023 (CEST) |
| | |
| | I couldn't import FILM via '''xml master file for level import''' with current Onisplit compiled from svn. A possible fix is to change <code>ReadElementContentAsString</code> to <code>ReadContentAsString</code>. |
| | ... |
| | <Films> |
| | <Import>films/BomberKonRun02.xml</Import> |
| | </Films> |
| | ... |
| | |
| | FilmImporter.cs |
| | ... |
| | private void ReadFilms(XmlReader xml, string basePath) |
| | ... |
| | //string filePath = Path.Combine(basePath, xml.ReadElementContentAsString()); |
| | string filePath = Path.Combine(basePath, xml.ReadContentAsString()); |
| | |
| | :[[User:Paradox-01|paradox-01]] ([[User talk:Paradox-01|talk]]) 12:59, 14 November 2023 (CET) |
|
| |
|
| ==TGA Transparency bug== | | ==TGA Transparency bug== |
|
| |
| I extracted HQ_DOUBLED_GLASS as TGA format from vanilla Level8_Final with the OniSplit command -extract:tga. The file was opened in Photoshop and the alpha channel was visible. | | I extracted HQ_DOUBLED_GLASS as TGA format from vanilla Level8_Final with the OniSplit command -extract:tga. The file was opened in Photoshop and the alpha channel was visible. |
| I then added that texture to Sketchup and applied it in a test level, it appeared transparent in Sketchup. I used the command -create:level to create a level in Oni. In the game Oni, the texture appeared opaque not transparent. When, the file TXMPHQ_DOUBLED_GLASS.oni was extracted from the test level as TGA, the alpha channel was gone or opaque. | | I then added that texture to Sketchup and applied it in a test level, it appeared transparent in Sketchup. I used the command -create:level to create a level in Oni. In the game Oni, the texture appeared opaque not transparent. When, the file TXMPHQ_DOUBLED_GLASS.oni was extracted from the test level as TGA, the alpha channel was gone or opaque. |
| Line 54: |
Line 99: |
| #:[[User:Geyser|geyser]] ([[User talk:Geyser|talk]]) | | #:[[User:Geyser|geyser]] ([[User talk:Geyser|talk]]) |
|
| |
|
| ==Page improvement==
| | [[Category:Completed modding tools]][[Category:Bi-platform modding tools]] |
| Try to click on http://wiki.oni2.net/OniSplit#CLI_tips
| |
| | |
| The section should be made to pop up, currently it doesn't. --[[User:Paradox-01|Paradox-01]]
| |
| | |
| :Yes, when a Divhide section is set to start hidden, it throws off the browser's ability to jump to the right spot. I've never been sure whether to have that section auto-show or auto-hide. Now that it's auto-showing, you'll see that the anchor works. --[[User:Iritscen|Iritscen]] ([[User talk:Iritscen|talk]]) 12:50, 12 March 2014 (CET)
| |
| | |
| | |
| ==Change Log ==
| |
| OniSplit version: OniSplit v0.9.90
| |
| | |
| What's new:
| |
| :* Fixes bugs with Import/Export of M3GMs (obj files).
| |
| :* Fixes euler angle issues with exported TRAMs.
| |
| :* Fixes -noanim command to produce a standing pose.
| |
| :* In the ONWC file, you should be able to reference the dae/obj file directly then you don't need the separate M3GM.
| |
| :* When exporting AKEV, quads that have script ids assigned to them are exported to separate files. This is related to BSL commands such as env_show 540 0
| |
| :* Adds option -anim-merge to export multiple animations to a single dae. Useful in dealing with walk/run or combo animations.
| |
| | |
| onisplit -extract:xml <destination directory> -anim-merge -anim-body:src\Path_To_\TRBSkonoko_body_high.oni Path_To\TRAMKONCOMcomb_k.oni Path_To\TRAMKONCOMcomb_k_k.oni Path_To\TRAMKONCOMcomb_k_k_k.oni
| |
| | |
| :* Adds a scene exporter
| |
| | |
| OniSplit -extract:dae <destination directory> scene.xml
| |
| | |
| For example if the scene.xml file looks like this
| |
| | |
| <Scene>
| |
| <Node Name="camera">
| |
| <Camera />
| |
| <Animation>OBANCamout01.oni</Animation>
| |
| <Animation>OBANCamout02.oni</Animation>
| |
| <Animation>OBANCamout03.oni</Animation>
| |
| <Animation>OBANCamout04.oni</Animation>
| |
| <Animation>OBANCamout05.oni</Animation>
| |
| <Animation>OBANCamout06.oni</Animation>
| |
| </Node>
| |
| <Node Name="motorcycle02">
| |
| <Geometry>M3GMmotorcycle02.oni</Geometry>
| |
| <Animation>OBANmotorcycle02.oni</Animation>
| |
| <Animation>OBANmotorcycle02_stop.oni</Animation>
| |
| <Node Name="hubs">
| |
| <Geometry>M3GMhubs.oni</Geometry>
| |
| <Animation>OBANhubs.oni</Animation>
| |
| <Animation>OBANhubs_stop.oni</Animation>
| |
| </Node>
| |
| <Node Name="hubs_rear">
| |
| <Geometry>M3GMhubs_rear.oni</Geometry>
| |
| <Animation>OBANhubs_rear.oni</Animation>
| |
| <Animation>OBANhubs_rear_stop.oni</Animation>
| |
| </Node>
| |
| </Node>
| |
| </Scene>
| |
| | |
| When you load the dae in XSI you'll find the motorcycle and the lab level intro camera
| |
| If you select the camera and press play you'll get to see the motorcycle into animation like you see it in game
| |
| | |
| | |
| OniSplit version: OniSplit v0.9.52
| |
| | |
| What's new:
| |
| :* When a TRBS file is exported to xml the geometry is exported to separate .dae files, one .dae file for each LOD
| |
| :* New -anim-body option. This allows a particular body (ONCC or TRBS) to be specified when exporting animations:
| |
| | |
| onisplit -extract:xml out -anim-body:ONCCbarabus.oni TRAMsomething.oni
| |
| | |
| :* New -recurse option for the xml exporter. Have fun :)
| |
| :: This extracts all linked files e.g. it starts with ONCC, goes to TRAC and then extracts all TRAMs too. (This works by replacing classes file links.)
| |
| :: Recursive extracted files can be re-converted recursively again.
| |
| | |
| onisplit -extract:xml out -recurse ONCCbarabus.oni
| |
| | |
| :* Changed light color in the environment importer to white (it used to be blueish)
| |
| :* New -env-notxmp option. This prevents the automatic creation of TXMP files while importing the environment.
| |
| :* Made -normals work when importing TRBS from xml + dae files.
| |
| :* Fixed the Collada importer to work with 3DSMax exported files
| |
| | |
| OniSplit version: OniSplit v0.9.40
| |
| | |
| What's new:
| |
| | |
| :* support for exporting/importing [[OBD:BINA/SABD|sound animations]] to/from xml files
| |
| :* better Collada export for environment
| |
| :* support for full color transparent textures (-format:bgra32 on the command line, ARGB8888 format in an xml file)
| |
| :* different (hopefully better) xml export format for animations (this one is actually from 0.9.38 but since that wasn't mentioned here...)
| |
| :* a more or less complete animation importer. This one deservers some notes:
| |
| ::-unlike other importers that produce .oni files this one produces and .xml file (similar to the one you get when exporting a TRAM)
| |
| ::when you do
| |
| onisplit -create:tram target_dir animation.dae
| |
| ::in the target dir you'll get a TRAManimation.xml file.
| |
| ::You need to add some stuff to that file to make it actually work as an animation. In particular the animation type, from/to states and varient needs to be set.
| |
| ::-For all I know this works with animations exported from Oni and modified in Softimage. If you come up with a completly new animation it should work as long as the skeleton is similar to the one used in Oni.
| |
| ::-Note that the geometry that is present inside the Collada file is used to compute the "vertical extents" so it better be the same or close to the one the animation is intended for.
| |
| ::-The biggest problem are the attacks. While it's not difficult to add attacks to the xml file, computing the necessary "extents" is not going to be easy. I guess in the end I'll have to add some command to OniSplit to do it.
| |
| ::-Everything else that I forgot :)
| |
| | |
| [[User:Neo|Neo]]
| |
| | |
| New OniSplit version: [http://cid-639aa31296681bfe.skydrive.live.com/self.aspx/Oni/OniSplit/OniSplit|_v0.9.37.zip OniSplit v0.9.37]
| |
| | |
| What's new:
| |
| | |
| :* support for transparency in the environment importer
| |
| | |
| | |
| New OniSplit version: OniSplit v0.9.35
| |
| | |
| What's new:
| |
| | |
| :* conversion of recorded films (.dat binary files) to xml files that can be used to create FILM .oni files
| |
| | |
| OniSplit film2xml out_dir film.dat
| |
| | |
| | |
| New OniSplit version: OniSplit v0.9.34
| |
| | |
| What's new:
| |
| | |
| :* SNDD importer
| |
| ::-WAV files (.wav, mono/stereo, 22.05KHz/44.1KHz, uncompressed(PCM)/compressed(MS-ADPCM)) produce SNDD files that are compatible with Oni PC retail.
| |
| ::-AIFC files (.aif/.aifc/.afc, mono/stereo 22.05KHz, compressed(ima4)) produce SNDD files that are compatible with Oni Mac.
| |
| ::Example
| |
| | |
| | |
|
| |
| OniSplit -create out_dir test.aif
| |
| OniSplit -create out_dir test.wav
| |
| | |
| | |
| :*LOD support for creating TRBS files. This can be done by creating an xml file containing the following:
| |
| | |
| <?xml version="1.0" encoding="utf-8"?>
| |
| <Oni Version="0.9.29.0">
| |
| <Instance id="0" type="TRBS">
| |
| <Elements>
| |
| <Link>barabus_body_1.dae</Link>
| |
| <Link>barabus_body_2.dae</Link>
| |
| <Link>barabus_body_3.dae</Link>
| |
| <Link>barabus_body_4.dae</Link>
| |
| <Link>barabus_body_5.dae</Link>
| |
| </Elements>
| |
| </Instance>
| |
| </Oni>
| |
| | |
| ::and running the command (assuming the created xml file's name is barabus_body.xml):
| |
| | |
| OniSplit -create out_dir barabus_body.xml
| |
| | |
| ::It's not strictly necessary to create 5 different geometries for each LOD. The following works just as well:
| |
| | |
| <?xml version="1.0" encoding="utf-8"?>
| |
| <Oni Version="0.9.29.0">
| |
| <Instance id="0" type="TRBS">
| |
| <Elements>
| |
| <Link>barabus_body_1.dae</Link>
| |
| <Link>barabus_body_2.dae</Link>
| |
| <Link>barabus_body_2.dae</Link>
| |
| <Link>barabus_body_2.dae</Link>
| |
| <Link>barabus_body_3.dae</Link>
| |
| </Elements>
| |
| </Instance>
| |
| </Oni>
| |
| | |
| | |
| :*An xml file can contain "links" to other xml/obj/dae files. For example you can have the following line in an ONWC xml file:
| |
| | |
| <Geometry>pistol.obj</Geometry>
| |
| | |
| ::Assuming the file pistol.obj exists in the same directory an M3GM .oni file will be automatically created from it.
| |
| | |
| ::Relative paths work just as well:
| |
| | |
| <Geometry>geometry/pistol.obj</Geometry>
| |
| | |
| | |
| :*The -create:subt, -create:txmp and -create:m3gm are sort of obsolete. They still work but now you can simply use '-create' (or just 'create'):
| |
| | |
| OniSplit -create out_dir crate.dae
| |
| OniSplit create out_dir -format:bgr555 -genmipmaps pic.tga
| |
| OniSplit create out_dir subtitles.txt
| |
| | |
| | |
| :*Work in progress: the AKEV importer now reads Collada materials so the resulting AKEV is textured.
| |
| | |
| :Sample levels:
| |
| :[http://cid-639aa31296681bfe.skydrive.live.com/self.aspx/Oni/noglass.zip TestLevel1] -- This level should look like this in-game: <u>[[:Image:NoGlass Import Test 1.jpg|Image 1]]</u> <u>[[:Image:NoGlass Import Test 2.jpg|Image 2]]</u> <u>[[:Image:NoGlass Import Test 3.jpg|Image 3]]</u>
| |
| :[http://cid-639aa31296681bfe.skydrive.live.com/self.aspx/Oni/hexagon.zip TestLevel2] -- This level should look like this in-game: <u>[http://edt.oni2.net/images/hexagon1.jpg Image 1]</u>
| |
| :A zip file contains the minimum needed to get a new level running in Oni. To "compile" a level extract it to a folder and run the following commands:
| |
|
| |
| OniSplit -create out -genmipmaps -format:dxt1 *.xml
| |
| OniSplit -import:nosep . Oni\GameDataFolder\level1_Final.dat
| |
| | |
| :(Of course, you need to change the output .dat file path to match your Oni installation path)
| |
| | |
| :Note1: The hexagon level needs to be scaled up to work properly. Use the envscale option for this:
| |
| OniSplit -create out -genmipmaps -format:dxt1 -envscale:40 *.xml
| |
| | |
| :Note2: I've updated the level files to contain 20 empty corpses to prevent crashes.
| |