How to manage BIG scene on Mobile?

If you are a new Irrlicht Engine user, and have a newbie-question, this is the forum for you. You may also post general programming questions here.

How to manage BIG scene on Mobile?

Postby qidaozhilong2 » Thu Apr 12, 2012 5:13 am

How to manage the extremely BIG scene using Irrlicht,especially on Android?

I have succeeded to use .obj model as a scene on my game of android phone.
But i found its not a good choice as mobile RAM is so small and no Octo tree, LOD and others advanced skills to raise performance.

Hava any better choice?
And i use 3DMax to make the .obj models and it's useful.
qidaozhilong2
 
Posts: 17
Joined: Sun Apr 01, 2012 3:51 pm

Re: How to manage BIG scene on Mobile?

Postby hendu » Thu Apr 12, 2012 7:13 am

Split it to chunks and load as needed.
hendu
 
Posts: 1561
Joined: Sat Dec 18, 2010 12:53 pm

Re: How to manage BIG scene on Mobile?

Postby qidaozhilong2 » Thu Apr 12, 2012 8:55 am

hendu wrote:Split it to chunks and load as needed.


That's a good idea. Maybe i should forget LOD, oct Tree skills.
And still use .obj scene
qidaozhilong2
 
Posts: 17
Joined: Sun Apr 01, 2012 3:51 pm

Re: How to manage BIG scene on Mobile?

Postby Virion » Thu Apr 12, 2012 9:05 pm

Check out Occlusion Culling technique. reuse any 3D models as you can. and use texture formats that can be read by hardware directly (such as PVR or KTX), don't use PNG or JPG as it can use up a lot of memory after decompression. you will also need a compressed 3D model format. check out openctm http://openctm.sourceforge.net/
User avatar
Virion
 
Posts: 2102
Joined: Mon Dec 18, 2006 5:04 am
Location: Malaysia

Re: How to manage BIG scene on Mobile?

Postby fmx » Thu Apr 12, 2012 10:01 pm

OpenCTM gets small files because of LZMA compression, the data would still need to be decompressed and stored fully inside RAM.
the only thing it will help with is to reduce loading times...

like hendu said, biggest gain on mobile platform will come by splitting the scene into smaller models and only loading what is necessary.
octrees, lod, occlusion culling, and compressed textures wouldnt hurt, use them too :wink:
User avatar
fmx
 
Posts: 559
Joined: Wed Dec 06, 2006 9:28 am
Location: UK

Re: How to manage BIG scene on Mobile?

Postby hendu » Fri Apr 13, 2012 7:38 am

Actually, LZMA decompression is very slow compared to the usual deflate, this difference is much greater on limited platforms such as mobile.
hendu
 
Posts: 1561
Joined: Sat Dec 18, 2010 12:53 pm

Re: How to manage BIG scene on Mobile?

Postby REDDemon » Fri Apr 13, 2012 9:10 am

the only way to compress models is by reducing number of poligons. Other tecniques will consume the same memory amount with additional overhead for decoding (LZMA, zip, normals discretization). I think that android packages files are alredy compressed (not sure eh ^^) but compressed images may be needed even if the package is already zipped, you will never achieve the same size of a JPG with a zipped BMP. ETC compression helps to solve those problems, is not as HD saving as JPG, but is RAM saving wich is great, and have no decoding overhead.
OpenGL is not hard. What you have to do is just explained in specifications. What is hard is dealing with poor OpenGL implementations.
User avatar
REDDemon
 
Posts: 831
Joined: Tue Aug 31, 2010 8:06 pm
Location: Genova (Italy)

Re: How to manage BIG scene on Mobile?

Postby Klunk » Fri Apr 13, 2012 4:34 pm

usual techniques for art side memory overhead reduction would be....

reduce texture sizes
indexing textures to 8 & 4 bit. (not sure but i don't think it's supported in irrlicht)
shared monochrome textures (can be as low as 4 bit, but as above) , and then varying by colourizing with vertex colours.
polygon reduction.
baked vertex lighting. reduces memory by removing the need for normals at the cost of losing "realtime" lighting. (not really supported in irrlicht)
moving ambient lightmaps from textures to verts.
getting rid of LODS altogether (if memory has priority over framerate)
simplify collision meshes -> reduce polys or reduce to primitive descriptions.
Klunk
 
Posts: 226
Joined: Mon Jan 10, 2011 5:21 pm

Re: How to manage BIG scene on Mobile?

Postby Virion » Sat Apr 14, 2012 11:37 am

never use jpg. although it has small size but the memory consumption is high.

see this chart:
http://www.learn-cocos2d.com/wordpress/ ... .23.10.png
User avatar
Virion
 
Posts: 2102
Joined: Mon Dec 18, 2006 5:04 am
Location: Malaysia

Re: How to manage BIG scene on Mobile?

Postby hendu » Sat Apr 14, 2012 4:34 pm

Now that I'm not buying. One pixel takes the exact same amount of ram uncompressed no matter where it comes from, be it png or jpeg.

edit: Haha, the chart is about loading times on an iPhone, not about VRAM use. Certainly much better.
hendu
 
Posts: 1561
Joined: Sat Dec 18, 2010 12:53 pm


Return to Beginners Help

Who is online

Users browsing this forum: No registered users and 0 guests