Cel Shading.... A method for irrlicht???

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.
Post Reply
dabeav
Posts: 47
Joined: Fri Jan 23, 2004 6:50 pm

Cel Shading.... A method for irrlicht???

Post by dabeav »

Hi, I am VERY new to irrlicht, in fact I have just been looking through some of the documentation and forum posts for a couple days. I have noticed that irrlicht dosnt support shaders, nor opengl 1D textures. This causes a problem w/ cel shading, and that simply wont do. I recently read this article:
http://www.gamedev.net/reference/progra ... elshading/
it talks about 2 methods of creating a cel shading effect. They both require you to render an object w/out lighting then depending on which method you use, you either multitexture w/ a 2d and 1d image, or you set the color PER vertex to a greyscale value and render w/out blending turned on. Then you re render the object w/backfaces in wireframe mode. Since irrlicth has a color parameter per vertex this could be possible.

I believe the second method could work in irrlicht (not sure, that is my question). In order to do this in irrlicht you would need to be able to do this:

1. Render the same object twice w/out clearing the buffers
2. Turn off blending and lighting
3. Render in wireframe mode w/front faces culled
4. Change the wireframe linewidth to 2 or 3


Are all these things possible in irrlicht?? If so, this could be very easy to imlement.
niko
Site Admin
Posts: 1759
Joined: Fri Aug 22, 2003 4:44 am
Location: Vienna, Austria
Contact:

Re: Cel Shading.... A method for irrlicht???

Post by niko »

dabeav wrote:Are all these things possible in irrlicht?? If so, this could be very easy to imlement.
Sure, the only thing is, you have to modify the engine a little bit: Simply add this rendering method as new material. That's just some new lines of code, recompile it, and it should work.
dabeav
Posts: 47
Joined: Fri Jan 23, 2004 6:50 pm

Post by dabeav »

Excellent, how exactly would I a new material to the engine. Could you give me a list of files that would need to be changed? Or does this require adding a file? Sorry, im realy not familiar with the workings of this engine yet. But I will be eventualy, cause this engine rocks. Thank you.
Gold_Fusion
Posts: 26
Joined: Tue Jan 20, 2004 9:25 pm
Location: England
Contact:

Post by Gold_Fusion »

Be sure to release whatever modifications you make so that we can use it too. ;)
dabeav
Posts: 47
Joined: Fri Jan 23, 2004 6:50 pm

Post by dabeav »

If I am able to make my modifications work, I will definatly release it. Oh question, are there any plans to implement triangle strips? If not, I will also look at modifying the engine to use the tri stripper library
http://users.pandora.be/tfautre/softdev ... r_main.htm
Its very usefull, and fast. And only needs modification in the actual render steps. Also, I would like to implement Compiled Vertex Arrays inside the Opengl Render path, for making multitexture passes much faster. Since I know that the directX path has been much more optimized, I will attempt to rip down the opengl path and help as much as I can. But it is going to take me a while to rip apart the engine, since I am not particularly familiar with it. Any help, and or suggestions would be great thankx.
keless
Posts: 805
Joined: Mon Dec 15, 2003 10:37 pm
Location: Los Angeles, California, USA

Post by keless »

rock on dabaev.

make sure you post when you come across any trouble.

i believe all of the OGL implementation specific is in:
COpenGLTexture.h
CVideoOpenGL.h
glext.h
a screen cap is worth 0x100000 DWORDS
Ayanami
Posts: 24
Joined: Wed Jan 14, 2004 1:30 pm

Post by Ayanami »

yes i want Cel Shading tutorial, too ;)
TYLENOL
Posts: 3
Joined: Mon Jan 19, 2004 10:46 am
Location: Brasil
Contact:

Post by TYLENOL »

Hi!
1) Niko great work.

2)
dabeav wrote:If I am able to make my modifications work, I will definatly release it. Oh question, are there any plans to implement triangle strips? If not, I will also look at modifying the engine to use the tri stripper library
http://users.pandora.be/tfautre/softdev ... r_main.htm
Its very usefull, and fast. And only needs modification in the actual render steps.
Im implementing tringle-strips in IrrLicht using ACTC http://www.plunk.org/~grantham/
It render already and works like an OctreeSceneNode, but performance isnt that great (yet).
If you like I can post the code and we can work together. :)
dabeav
Posts: 47
Joined: Fri Jan 23, 2004 6:50 pm

Post by dabeav »

TYLENOL, that could be cool, I just finished my implementation tonight, I am planning on sending a copy to Niko, so hopefully he will integrate it. I can also send you a copy if you want, just jot down your Email address, or send a copy of your code, or a note what have you to here.

beavis@rochester.rr.com

Thanx.
Post Reply