Ok.. with those bugs i may try to made some test cases later.
Now, i have some other intersting bug, but that not related to 1.4.1 -> 1.8.4 migration, but still dunno if it something worth of creating another topic, as in end it all about the same game.
So, issue is, when i build game for win32, be it for irrlicht 1.4.1 , or for irrlicht 1.8.4 , floor always looks correct, like this:
http://kas1e.mikendezign.com/aos4/irrli ... _win32.jpg
Then, if i build the game for linux, or for amigaos4, for both, be it irrlicht 1.4.1 or irrlicht 1.8.4 , be it SDL or X11 renderer, floor looks wrong:
http://kas1e.mikendezign.com/aos4/irrli ... aos4_1.jpg
(see, all like "fog sky").
But texture loads fine, etc, because if i move head down, then i can see it (still wrongly by color, but still):
http://kas1e.mikendezign.com/aos4/irrli ... aos4_2.jpg
Sure you don't know how it all coded, but maybe visually you can think of anything which can somehow be related ?
I mean, strangely it works for win32, but didn't for other oses. Like, there is some "only works for win32" thing done, which i do not know where to look at at moment..
From implementation side, i can see that there is some *.irr file, in which we do just that:
Code: Select all
<node type="octTree">
<attributes>
<string name="Name" value="" />
<int name="Id" value="-1" />
<vector3d name="Position" value="-35.984428, -0.494462, 0.000000" />
<vector3d name="Rotation" value="0.000000, 0.000000, 0.000000" />
<vector3d name="Scale" value="300.000000, 300.000000, 300.000000" />
<bool name="Visible" value="true" />
<enum name="AutomaticCulling" value="box" />
<int name="DebugDataVisible" value="0" />
<bool name="IsDebugObject" value="false" />
<int name="MinimalPolysPerNode" value="256" />
<string name="Mesh" value="data/plan.ms3d" />
</attributes>
<materials>
<attributes>
<enum name="Type" value="solid" />
<color name="Ambient" value="ff5c5c5c" />
<color name="Diffuse" value="ffcccccc" />
<color name="Emissive" value="ff000000" />
<color name="Specular" value="ff000000" />
<float name="Shininess" value="0.128000" />
<float name="Param1" value="0.000000" />
<float name="Param2" value="0.000000" />
<texture name="Texture1" value="data/g1.jpg" />
<texture name="Texture2" value="" />
<texture name="Texture3" value="" />
<texture name="Texture4" value="" />
<bool name="Wireframe" value="false" />
<bool name="GouraudShading" value="true" />
<bool name="Lighting" value="true" />
<bool name="ZWriteEnable" value="true" />
<int name="ZBuffer" value="1" />
<bool name="BackfaceCulling" value="true" />
<bool name="FogEnable" value="false" />
<bool name="NormalizeNormals" value="true" />
<bool name="BilinearFilter1" value="true" />
<bool name="BilinearFilter2" value="true" />
<bool name="BilinearFilter3" value="true" />
<bool name="BilinearFilter4" value="true" />
<bool name="TrilinearFilter1" value="false" />
<bool name="TrilinearFilter2" value="false" />
<bool name="TrilinearFilter3" value="false" />
<bool name="TrilinearFilter4" value="false" />
<bool name="AnisotropicFilter1" value="false" />
<bool name="AnisotropicFilter2" value="false" />
<bool name="AnisotropicFilter3" value="false" />
<bool name="AnisotropicFilter4" value="false" />
<enum name="TextureWrap1" value="texture_clamp_repeat" />
<enum name="TextureWrap2" value="texture_clamp_repeat" />
<enum name="TextureWrap3" value="texture_clamp_repeat" />
<enum name="TextureWrap4" value="texture_clamp_repeat" />
</attributes>
</materials>
</node>
That *.irr file have a lot of other models of the same ms3d format loaded, with the same textures attributes, etc ,etc : all of them looks correct in game.
Just this one by some reasson only works on win32 as expected and not on linux/amigaos4.
EDIT: at least i found value changing of which made some effect : that is "scale". Originally its 300.000000 in all 3 places, and once i start to reduce that value, the more i reduce it, the more floor i can see. Once i reduce it to minimum, i can see then original floor's color, like fog not overwrite it anymore that much. It looks, like there is simply some problem with the UVs. Maybe fog is calculated just per vertex and then interpolated and because its so big, something gets fucked.. But then , why it works for win32 ?