|
|
Line 1,159: |
Line 1,159: |
|
| |
|
| ====corpse array (CRSA)==== | | ====corpse array (CRSA)==== |
| As far as I know, direct CRSA import is not yet supported. --[[User:Paradox-01|paradox-01]] ([[User talk:Paradox-01|talk]]) 17:28, 28 December 2013 (CET) | | As far as I know, direct CRSA import is not yet supported. |
| | |
| | I simply put this section here because I hope Neo will soon integrate it. --[[User:Paradox-01|paradox-01]] ([[User talk:Paradox-01|talk]]) 17:28, 28 December 2013 (CET) |
|
| |
|
| (You can try to edit the final ONLV*.oni on your own. See [[XML:ONLV#CRSA|HERE]].) | | (You can try to edit the final ONLV*.oni on your own. See [[XML:ONLV#CRSA|HERE]].) |
Line 1,185: |
Line 1,187: |
| :: Due to this observations I think each body part is looked up separately which means for Oni to build the corpse with no hierarchal structure. | | :: Due to this observations I think each body part is looked up separately which means for Oni to build the corpse with no hierarchal structure. |
|
| |
|
| :: To test this I took a character, rotated the parts, and [Mod_Tool#Exchange_meshes_in_hierarchies|destroyed]] the hierarchy revealing the true local rotation values of each part. | | :: To test this I took a character, rotated the parts, and [[Mod_Tool#Exchange_meshes_in_hierarchies|destroyed]] the hierarchy revealing the true local rotation values of each part. |
|
| |
|
| :: Those rotations and positions where entered into [https://dl.dropboxusercontent.com/u/139715/OniGalore/OniMatrix_src.zip Neo's matrix program.] I then put the matrix to into the CRSA instance of the extracted ONLV file, then reconverted to oni. | | :: Those rotations and positions where entered into [https://dl.dropboxusercontent.com/u/139715/OniGalore/OniMatrix_src.zip Neo's matrix program.] I then put the matrix to into the CRSA instance of the extracted ONLV file, then reconverted to oni. |
Line 1,636: |
Line 1,638: |
| : Read on [[XML:M3GM#VCRA|HERE]]. | | : Read on [[XML:M3GM#VCRA|HERE]]. |
| |} | | |} |
|
| |
|
| |
| ==Ideas to test out==
| |
| None ATM.
| |
|
| |
|
| |
| ==Ideas that has been tested==
| |
| ===Sky dome - it's a fail===
| |
| {| border=0 cellspacing=20 cellpadding=0 align=right
| |
| | sky box<br>[http://i305.photobucket.com/albums/nn207/unknownfuture/Oni_Galore_Images/XML_modding/ugly_skybox_lines.jpg http://i305.photobucket.com/albums/nn207/unknownfuture/Oni_Galore_Images/XML_modding/ugly_skybox_lines_tn.jpg]
| |
| | sky dome<br>[http://i305.photobucket.com/albums/nn207/unknownfuture/Oni_Galore_Images/3D_modding/sky_dome_512x512.jpg http://i305.photobucket.com/albums/nn207/unknownfuture/Oni_Galore_Images/3D_modding/sky_dome_512x512_tn.jpg]
| |
| |}
| |
|
| |
| Maybe it's possible to create a very big sphere or dome that covers the entire level (and let Oni's skybox unused). If it's doable it could avoid ugly lines of the skybox coming from OpenGL rendering.
| |
|
| |
|
| |
| '''Update:''' 12 June 2012
| |
|
| |
| New issues appeared that need to take care about:
| |
|
| |
| * brightness:
| |
| : The brightness can be somewhat influenced by BSL commands like with gl_fog_..., gs_farclipplane and must be set adequately.
| |
|
| |
| * texture size:
| |
| : The dome seen in the screenshot has a texture size of 512x512 and hence looks quite ''pixelated''.
| |
| : The problem might be solved by splitting the dome into sectors and giving each sector its own texture.
| |
|
| |
|
| |
| {| border=0 cellspacing=20 cellpadding=0 align=right
| |
| | gl_fog_start=.99999<br>[http://i305.photobucket.com/albums/nn207/unknownfuture/OCF_Images/sky4sectors_b.jpg http://i305.photobucket.com/albums/nn207/unknownfuture/OCF_Images/sky4sectors_b_tn.jpg]
| |
| | test level over [http://mods.oni2.net/node/202 HERE]<br>[http://i305.photobucket.com/albums/nn207/unknownfuture/OCF_Images/sky4sectors_a.jpg http://i305.photobucket.com/albums/nn207/unknownfuture/OCF_Images/sky4sectors_a_tn.jpg]
| |
| |}
| |
|
| |
| '''Update:''' 14 June 2012
| |
|
| |
| * texture boarder and distortions:
| |
| : Texture boarders have darker pixels so the UV must not reach them. Also after splitting the textures inside the editor there will be little distortions but they are still noticeable enough to make the sky look odd. Fine-tuning the UVs didn't really help.
| |
|
| |
| * The gs_farclipplane max value makes the size of the dome quite limited: I think that the max radius here is somewhere between 2500 and 5000 world units.
| |
|
| |
| I consider this as a ''fail''. Oni would need bigger view range and a texture support of 2096x2096.
| |
|
| |
|
| |
| ==Ideas for OniSplit==
| |
| '''bugfixes'''
| |
|
| |
| '''CJBOs and the shared folder'''
| |
|
| |
| You should be able to use the original OBJC files with the master xml file. But at the moment (v0.9.90.0, Win7 64-bit), BINACJBODoor.xml wants for example:
| |
| <Class>doors/TCdouble.oni</Class>
| |
| it should be
| |
| <Class>TCdouble</Class>
| |
|
| |
| Works:
| |
| * Turret
| |
|
| |
| Works not:
| |
| * Door
| |
| * Colsole
| |
| * Trigger
| |
|
| |
| Not tested:
| |
| * Funiture
| |
|
| |
|
| |
| ----
| |
| '''improvments'''
| |
|
| |
| '''better support for script objects'''
| |
| <Import Path="../level19_Final/compound_script_405.dae">
| |
| <Node>
| |
| <ScriptId>405</ScriptId>
| |
| </Node>
| |
| </Import>
| |
|
| |
| it should be just one line because of the keyword '''''script'''''
| |
| <Import Path="../level19_Final/compound_'''''script'''''_405.dae"/>
| |
|
| |
|
| |
| '''door locklight'''
| |
|
| |
| extracting an ONLV to xml should generate an extra file with door locklights ready for the CJBO particle file
| |
|
| |
|
| |
| ----
| |
|
| |
| Neo could update OniSplit so that it is searching specific strings in object names of a dae level file.
| |
|
| |
|
| |
| '''Doors'''
| |
| * string "door*" (e.g. doorBlastDoorMX2000) -> DOOR + BINACJBODoor + OBAN
| |
| ** but if the string is "door*clone''N''" then the DOOR and OBAN creation gets skipped (e.g. doorBlastDoorMX2000clone3), only class name, rotation and position get written into BINACJBODoor
| |
|
| |
|
| |
| '''Animated objects'''
| |
| * string "*_BeforeAnim": that's first static object with collision data (e.g. BlueCar1_BeforeAnim)
| |
| * string "*_InAnim": that's the animated cutscene object (e.g. BlueCar1_InAnim)
| |
| * string "*_AfterAnim": that's the second static object with collision data (e.g BlueCar1_AfterAnim)
| |
|
| |
|
| |
| '''Fake-destructible objects'''
| |
| * string "*_BeforeAnim": that's first static object with collision data (e.g. ConcreteWall2_BeforeAnim)
| |
| * string "*_Fragment''N''": that's the group of animated cutscene objects (fragments of the static object) (e.g. ConcreteWall2_Frag5)
| |
| * string "*_ColFrag''N''": that's the group of static objects with collision data (e.g. ConcreteWall2_ColFrag5)
| |
| * string "*_NoColFrag''N''": that's the group of static objects without character collision (e.g. ConcreteWall2_NoColFrag5)<br>NoColFrag would be useful if the fragments are quite numerous and small and hence would pose a problem to the pathfinding
| |