yin / yngine

Automatically exported from code.google.com/p/yngine
0 stars 0 forks source link

Create Renderer System #18

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
Separate all rendering code into one package and write all glue code needed for 
it to work as a separate unit traversing the Scene Graph.

Try to make the Scene Graph produce series of Rendering Entities stored in 
queue. These entities will get scheduled by the renderer. Things like 
transparency, reflection and other effects could be then easily added as 
Scheduling Rules.

E.g.: When we render a scene with a mirror, we need stencil and scene-in-mirror 
rendering to be done after z-buffer will contain all 'normal' objects possibly 
standing between camera and the mirror. The mirror scene node generates a 
Rendering Entity, let's call it "Scene Window Entity". It gets scheduled after 
currently rendered Scene Window finishes rendering 'normal' objects. Volumetric 
and transparent geometry would follow, etc. Portal(tm) is another thing, which 
comes to my mind.

Original issue reported on code.google.com by yinotaurus on 25 Mar 2011 at 11:38

GoogleCodeExporter commented 8 years ago
Here is list of all files calling GL functions:

$ grep gl.gl `find src/ -name '*.java'` | cut -f 1 -d ':' | uniq
src/sk/yin/yngine/geometry/Model.java
src/sk/yin/yngine/main/GLRenderer.java
src/sk/yin/yngine/particlesystem/SimpleRenderer.java
src/sk/yin/yngine/render/lights/MaterialDef.java
src/sk/yin/yngine/render/shaders/ShaderProgram.java
src/sk/yin/yngine/render/shaders/ShaderProgramBuilder.java
src/sk/yin/yngine/render/shaders/ShaderProgramVariables.java
src/sk/yin/yngine/render/textures/PlainVanilaTexture.java
src/sk/yin/yngine/scene/attributes/PhysicsAttribute.java
src/sk/yin/yngine/scene/attributes/TransformAttribute.java
src/sk/yin/yngine/scene/camera/LookAtCamera.java
src/sk/yin/yngine/scene/GenericLightNode.java
src/sk/yin/yngine/scene/io/CubeMapTextureFactory.java

Original comment by yinotaurus on 26 Mar 2011 at 12:36

GoogleCodeExporter commented 8 years ago

Original comment by yinotaurus on 26 Mar 2011 at 2:18