Realtime reflection and refraction in BGE?

I searched in the forum but only found stuff that don’t works in newer versions of Blender.
I would like realtime reflection and refraction to simulate ice in a game. I don’t want fake reflections or something like this.

There is no way to do real time reflections in the BGE. If you really want it that bad, buy Unitypro and start exporting your models to that. If you don’t want to change game engines, then you’re going to have to fake reflections by assigning an image to it and map it as reflection displayed in the attached picture. I would also turn down the color assigned to that texture, too! :slight_smile:


Computers aren’t fast enough to do it entirely “for real” in real time. You’ll have to fake it on some level.

What happened to render-to-texture script? It would allow this effects. It isn’t working more on Blender 2.5x?

I don’t expect the last level of realism in a reflection, but realtime dinamic reflection is a basic feature in modern games.

Games like Crysis and Need for Speed World do have that effects. Crysis isn’t more a new game. NFSW is not so expensive in terms of graphics at the point of run at full settings on my notebook.

You yet think that this games are heavy? Let’s take as example the Venice level from the Game Sauerbraten 2: Justice Edition. It has this effects and it’s not expensive. Below an example of another level of that game:

Please, don’t take what I will say as a negative critic or an offense, but we must be realistic, it’s serious lack of the BGE.

I like Blender so much. It’s an almost complete tool for game developers. It has pratically all you need to develop a game, but it’s a lack.

There is a reflection technique that involves duplicating and rotating the entire scene under the surface of the reflective material, and making it semi - transparent. This won’t work, naturally, with complex objects however, and is a cheap workaround, but can give some acceptable effects.

I wouldn’t go so far as to say that. I understand that you said “almost”, but one piece of software, especially Blender can not be the only tool used for game development. If you want to develop an actual game that runs as good as it looks, then 3ds max/maya and unity are your best bets. I will say though that Blender has some amazing capabilities for an open-source program, but it doesn’t compare to Autodesk! :smiley:

You can model, rigging, animate, apply materials, texturize, apply shaders, make lighting, make the logic, make cinematics, post processing and generate runtime.

The limitations are things like that above. The limited text editor that do not have all the facilities of an IDE, texture editor is limited compared to a external image editor, the lack of project support and so on. But even so you can do a game entirely in Blender and if you are a talented artist you can make a beautiful game.

Sometime ago Blender even not had realtime shadows. I knew the blender at a time when your real-time lighting was rubbish and today we have realtime lighting similar to professional games and so I belive in Blender.

Yes you can indeed do realtime reflection and refraction.

Refection can be accomplished by using render to texture or by using cube maps.
Refraction can be accomplished by using nodes, GLSL, or similar techniques.

@shroom7: I have maya and zbrush, and I still use blender by choice. I find certain things easier in blender while others are easier in maya or zbrush. Its not the tool, its the artist. You will find many pieces of art in the gallery that were created with blenders tools.

The BGE is a fairly good game engine, the problem is the users who are looking to make a quick game, then dont know how, blame the BGE, and then spread the word that the BGE is worthless.


Excalaberr, how can we use render-to-texture in Blender 2.58? I only found stuff related to 2.4x.

There is a tutorial for 2.49 here:

But they also have a finished blend for 2.5:

Hope this helps

i dont think thats the case at all lol :smiley: blender is mostly good for being free, theres a reason why 3ds max costs $3,495 more than blender. not trying to hate or anything, i love blender myself, its just i would pick 3ds max over blender any day but i lost it when i changed from vista to 7…:frowning:

I would really like to hear some clarification why you think that? What are the things that 3dsmax/maya can do that blender can’t do when developing a game?

What are the real differences if company is using blender & unity instead of 3dsmax/maya & unity?

Just because 3dsmax costs alot, it does not mean it is superior in every way compared to blender. Both programs can achieve exactly same results but with a bit different workflow.

Yea like you said, its more of a workflow preference. thats just my personal opinion though, i didnt mean to seem like i think blender sucks, im just sayin… :open_mouth: but if i had to point out specific features that caught my eye first time i tried 3ds max was the large library of shaders and the render window has a lot more things to tweak. i will say uv mapping was a lot easier in blender lol :wink:

No, there’s a reason? I thought that 3ds max costs $ 3.495 more because the developers of 3d max like to troll us…

But, what it has to do with Blender to be or not to be an almost complete tool for develop games?

The second link is broken.

The second link is broken.
There is a direct link to this file in the linked page above it

Blender it’s all-in-one, and I NEVER blamed Blender, NEVER blame and will NEVER blame! The biggest problem i see: DEVELOPERS ARE INDOLENT!!! Yes! I said that! I’m not a developer, but I say with all the conviction: If i was a developer, i help Blender a lot! I swear! Most of developers today want to do their softwares, instead of improve the softwares that alredy exists! WHY BLENDER RENDER, YAFARAY, LUXRENDER, CYCLES RENDER, and a lot of other softwares??? Why not start one, and improve it? WHY?? “It looks like a spider web”. Really? It really looks like a spider web? So, starting the developing, set a standard to the software’s coding, so everyone code the same way! It’s so hard accept that you’re improving a software that already exists? IT IS? YOU’RE HAPPY ONLY WHEN THE SOFTWARE IS YOURS? I know that all that softwares that I said, principally Yafaray, LuxRender and Cycles, it’s good softwares, but i think that instead of create more softwares, improve the ones that exists. So, Blender don’t have problems! It’s just consequence of a fate that just a few people see: Blender is all-in-one, and everything that makes everything, isn’t soo good in everything. A software that is skilled in do Sculpting, will be better that Blender in sculpting. A software that is skilled in do Post-processing, will be better that Blender in post-processing. BUT, YOU *UCKING BLIND, Blender do Modelling, Sculpting, Texturing, UV Map Editing, Texture Editing, Lighting, Animation, Particles, Curves, Physics (Offline in Blender Render and Real-time with Bullet in BGE) with support to cloth simulation, soft body simulation, smoke simulation, fluid simulation and Dynamic Painting with wetmaps support, Real-time rendering with a integrated Game Engine with support to GLSL, Ray-traced Rendering with Subsurface Scattering, Ambient Occlusion, Fallof Shadows, Indirect Lighting, Enviroment Lighting, and now with Cycles, it have support to GPU Rendering with CUDA, that is REAAAALLLY FAST and Daytime Control (and a lot of other things), Post-Processing, Video Editing, Text Editing and so on… Now, tell me a software that do all this…

Great! It works very well! Well enough to shut up the trolls…

I will reserve some time to study this file more detailedly!

Here is the file and here the tutorial!