Jump to content

XML talk:ONLV: Difference between revisions

4,529 bytes added ,  30 December 2013
mentioned notes
mNo edit summary
(mentioned notes)
Line 35: Line 35:


At the moment I fail to make the game go blam despite such texture for env/char. (500x501 px, OS 93 used) --[[User:Paradox-01|paradox-01]] ([[User talk:Paradox-01|talk]]) 13:24, 22 September 2013 (CEST)
At the moment I fail to make the game go blam despite such texture for env/char. (500x501 px, OS 93 used) --[[User:Paradox-01|paradox-01]] ([[User talk:Paradox-01|talk]]) 13:24, 22 September 2013 (CEST)
===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
8,201

edits