Other shadows engines

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.
CuteAlien
Admin
Posts: 10021
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: Other shadows engines

Post by CuteAlien »

Nice.I'll get rid of the other warnings on Monday probably (got some public holiday here).
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Noiecity
Posts: 384
Joined: Wed Aug 23, 2023 7:22 pm
Contact:

Re: Other shadows engines

Post by Noiecity »

thanks, again
Irrlicht is love, Irrlicht is life, long live to Irrlicht
Noiecity
Posts: 384
Joined: Wed Aug 23, 2023 7:22 pm
Contact:

Re: Other shadows engines

Post by Noiecity »

CuteAlien wrote: Sat May 18, 2024 10:51 pm Nice.I'll get rid of the other warnings on Monday probably (got some public holiday here).
Image

Awesome, your example works with any geometry, although I have a problem, when I load the sydney model and then when I run the application, when I hit close with alt+f4 I get an exception.

Image
Irrlicht is love, Irrlicht is life, long live to Irrlicht
CuteAlien
Admin
Posts: 10021
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: Other shadows engines

Post by CuteAlien »

My guess is you replaced the createSphereMesh by a getMesh() call but still drop() that mesh. Guessing that because that's what regularly happens to me when I switch from createMesh functions to getMesh functions and you'll get exactly that crash then ;-)
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
CuteAlien
Admin
Posts: 10021
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: Other shadows engines

Post by CuteAlien »

New version has the warnings removed. Sadly no speed-up, would have to rewrite XEffects quite a bit for that and I'm not familiar enough with the code to do that.
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Noiecity
Posts: 384
Joined: Wed Aug 23, 2023 7:22 pm
Contact:

Re: Other shadows engines

Post by Noiecity »

CuteAlien wrote: Mon May 20, 2024 4:36 pm My guess is you replaced the createSphereMesh by a getMesh() call but still drop() that mesh. Guessing that because that's what regularly happens to me when I switch from createMesh functions to getMesh functions and you'll get exactly that crash then ;-)
Yes, I did that, but for me all this is perfect since you already give me the solution, I wanted shadows and reflections and that they can be adaptable to any mesh and configurable in resolution, xeffects and your example achieve it perfectly
Irrlicht is love, Irrlicht is life, long live to Irrlicht
Noiecity
Posts: 384
Joined: Wed Aug 23, 2023 7:22 pm
Contact:

Re: Other shadows engines

Post by Noiecity »

CuteAlien wrote: Mon May 20, 2024 4:36 pm My guess is you replaced the createSphereMesh by a getMesh() call but still drop() that mesh. Guessing that because that's what regularly happens to me when I switch from createMesh functions to getMesh functions and you'll get exactly that crash then ;-)
I've commented //sphereMesh->drop(); to fix it, but I'm still ignorant on the actual behaviour it should have, so following Hello World's example I've added the condition in case of not loading the mesh when starting the application(although it's irrelevant in this problem of course), but I don't know if I should add something else or if it's ok like this

Code: Select all

 scene::IAnimatedMesh* sphereMesh = smgr->getMesh("../../media/sydney.md2");
	if (!sphereMesh)
	{
		device->drop();
		return 1;
	}

	if( sphereMesh )
	{
		// Nothing really special here except they need the shader material to display cubemaps.
		sphereNode = smgr->addAnimatedMeshSceneNode( sphereMesh );
		sphereNode->setScale(core::vector3df(3.0f, 3.0f, 3.0f));
		sphereNode->setPosition( core::vector3df(-250,0,0) );

......
Irrlicht is love, Irrlicht is life, long live to Irrlicht
CuteAlien
Admin
Posts: 10021
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: Other shadows engines

Post by CuteAlien »

Depends on what you really do. Playing with cubemaps is somewhat advanced stuff. You can't really use them without shaders. So likely next step you want to do stuff like for example mixing environment maps with your texture models. Then add lighting again - and so on. And that has all to be done in shaders now. And you are somewhat on your own there with Irrlicht - no shader editors to click stuff together.
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Noiecity
Posts: 384
Joined: Wed Aug 23, 2023 7:22 pm
Contact:

Re: Other shadows engines

Post by Noiecity »

CuteAlien wrote: Mon May 20, 2024 8:13 pm Depends on what you really do. Playing with cubemaps is somewhat advanced stuff. You can't really use them without shaders. So likely next step you want to do stuff like for example mixing environment maps with your texture models. Then add lighting again - and so on. And that has all to be done in shaders now. And you are somewhat on your own there with Irrlicht - no shader editors to click stuff together.
It's a real challenge, as the easiest way is HLSL or GLSL, as writing shaders directly in assembly is a tortuous task, in fact writing HLSL/GLSL already is... the good thing is that there are many tutorials on the internet, I think, from here on it's trial and error experimentation, as I've tried to learn shaders by reading, but as I say, it's tortuous, practically the possibilities are endless from there.
I have read that there are artificial intelligences that are focused on building shaders, but I haven't tested their usefulness yet, some time ago I tried to create a program in assembly(fasm) using chatgpt and never managed to create a window with directx9, in the end I learned it on my own lmao
Irrlicht is love, Irrlicht is life, long live to Irrlicht
Noiecity
Posts: 384
Joined: Wed Aug 23, 2023 7:22 pm
Contact:

Re: Other shadows engines

Post by Noiecity »

Irrlicht is love, Irrlicht is life, long live to Irrlicht
CuteAlien
Admin
Posts: 10021
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: Other shadows engines

Post by CuteAlien »

Yeah, don't do assembly shaders in this decade. Irrlicht still has a few of those internally, but just for historical reasons (were written once by people who knew that stuff and as long as they kinda work no one replaces them). I started with HLSL, but currently using GLSL for everything. GLSL just runs on more platforms and with Irrlicht never having made the jump beyond version 9 for D3D it's right now more or less my only real option.
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Noiecity
Posts: 384
Joined: Wed Aug 23, 2023 7:22 pm
Contact:

Re: Other shadows engines

Post by Noiecity »

CuteAlien wrote: Mon May 20, 2024 9:53 pm Yeah, don't do assembly shaders in this decade. Irrlicht still has a few of those internally, but just for historical reasons (were written once by people who knew that stuff and as long as they kinda work no one replaces them). I started with HLSL, but currently using GLSL for everything. GLSL just runs on more platforms and with Irrlicht never having made the jump beyond version 9 for D3D it's right now more or less my only real option.
By the way, the NVIDIA examples that say directx 10, inside the code they say they work in D3D9

"// Note that this version has twin versions of all techniques,
// so that this single effect file can be used in *either*
// DirectX9 or DirectX10!"
Irrlicht is love, Irrlicht is life, long live to Irrlicht
CuteAlien
Admin
Posts: 10021
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: Other shadows engines

Post by CuteAlien »

Many work in both. HLSL didn't change that much itself, more like the stuff you can do with it and how data is send to the gpu. But for example cubemap smoothing over borders with d3d9 won't work (you can see it in the examples when you increase the smoothing - in d3d9 you see the borders then, in opengl you won't).
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Noiecity
Posts: 384
Joined: Wed Aug 23, 2023 7:22 pm
Contact:

Re: Other shadows engines

Post by Noiecity »

CuteAlien wrote: Tue May 21, 2024 9:34 am Many work in both. HLSL didn't change that much itself, more like the stuff you can do with it and how data is send to the gpu. But for example cubemap smoothing over borders with d3d9 won't work (you can see it in the examples when you increase the smoothing - in d3d9 you see the borders then, in opengl you won't).
Oh that explains a lot, usually OpenGL examples don't open on this notebook because of my graphics card, I'll try later on my other notebook, thanks
Irrlicht is love, Irrlicht is life, long live to Irrlicht
CuteAlien
Admin
Posts: 10021
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: Other shadows engines

Post by CuteAlien »

Intel GPU on your notebook?
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Post Reply