Footprint of the engine and porting to a difficult OS

A forum to store posts deemed exceptionally wise and useful
Post Reply
Bazel

Footprint of the engine and porting to a difficult OS

Post by Bazel »

I am very impressed with the engine and its capabilities. I am wondering if anyone can tell me if it would be worth it to try and port the engine to a somewhat inhospitable OS.

Bascially, we have an embedded OS that will go into a sort of small Kiosk.

The device has somefairly stringent requirments due to its cheap construction.

The OS supports executables up to about 300-400K in size. There is no advanced rendering library available (e.g. no open gl etc), so all rendering would need to be in software and the final result for a frame would be a BMP bitmap that we would directly blit to the device using an api already developed (basically simple memory copy with attention to BMP palette).
And, unfortunately, BMPs are 256 color (although that may change).

So we would want the engine to do the work, but hand us a standard 256 color windows BMP at the end.

I noticed that Irrlict does list software as a rendering option. Has anyone built a barebones version of the engine? What would the footprint likely be?

I appreciate any information you can provide, but I understand that this is probably not the area most people are interested in.

By the way, anyone who is an expert with the Irrlicht source code, there may be an opportunity to get paid for your work to make the above work.

If it is not possible for Irrlicht to work under these circumstances, then if anyone has any other suggestions for other engines that might do the job, please let me know. I have looked at a few basic raycasting solutions but none of them seem to be very tight code.


thanks!
buhatkj
Posts: 444
Joined: Fri Dec 12, 2003 4:53 am
Contact:

devil in the details...

Post by buhatkj »

I wouldnt say i'm an expert, but i would point out some prerequisites/questions pertaining to this idea...
-does this OS of yours have a C++ compiler (GCC/ANSI compatible preferably?)
-when you were mentioning blitting a .bmp to screen you mean irrlicht should render to an image per-frame right?
-irrlicht itself isnt an executable in windows or linux, it's really a dynamic(static in linux) linked library. if your OS can use a windows .dll then the .exe could potentially be very small.

stripping out the OGL/directx code should be pretty easy i would think, irrlicht is written in a very easy-to-follow modular way. the other bit is that i'm not sure how the software rendering works, but id imagine it uses some low-level OS drawing functions to work, you may have to rewrite some of those for your OS

once again, just trying to help clarify
My irrlicht-based projects have gone underground for now, but if you want, check out my webcomic instead! http://brokenboomerang.net
thesmileman
Posts: 360
Joined: Tue Feb 10, 2004 2:20 am
Location: Lubbock, TX

Post by thesmileman »

Bazel,

I would have to disagree with what buhatkj said. I am no expert myself but I can tell you is I would not recommend you porting Irrlicht to your OS. Contrary to what buhatkj said Irrlicht in its current form uses directx and opengl to a large extent and since Niko does not have the software 3d renderer done I do not see how Irrlicht can help for your application. I

t sounds like your storege space is quite limited(Maybe not but it seems that way) and the Irrlicht dll in version 0.6 is 856 Kb.

Also since you say there is not a rendering library you would be limited only to 2d. There are many other graphics libraries that do 2d much better faster and are much smaller than Irrlicht for these sort of tasks. Just googling for graphics libraries for embedded systems pull up a number of hits including smxMGL and OpenML.

Hope that helps and good luck.
Post Reply