Patryk Kizny
|
|
« on: July 27, 2015, 02:48:59 AM » |
|
Hey,
I've done quite some modifications on the DE raytracer. The work is based on Syntopia / Knighty / Eiffie / ChrisJRodgers heritage.
This is much work in progress and I hope to keep posting updates. Detailed features list and more friendly version with some examples shortly.
Note: If it does not compile for you, that's probably the overload of camera data on the #vertex part. I plan on moving that to separate frags to allow easier switching on and off.
|
|
|
Logged
|
Visual Artist, Director & Cinematographer specialized in emerging imaging techniques.
|
|
|
Patryk Kizny
|
|
« Reply #1 on: August 01, 2015, 12:24:13 AM » |
|
Here we go with more public version of the raytracer.
DE-PK-1.0.11 Changelog
Shader updates
--> Color AO (it was lost in some previous versions guess since Kn2) --> Better specular and diffuse falloff --> Specular highlights take into account material color (different colors for diffuse and specular) --> Ambient, Global Sun, Spotlight and Environment lighting working together including shadows --> Cleaned up the structure of the code so now it's easier to add more lights if someone wanted --> shading now takes into account material properties
Materials -- Implemented basic materials, now used for floor and fractal -- now implemented in main trace/light loop -- there are still some leftovers in the code still refering to the old color, so it was not removed from the UI
Background -- supports flat 2D background -- supports equirectanguilar backgrounds
Pipeline -- background processing is removed from the Post section (preparing for alpha transparency support and matte objects)
External camera -- External camera is now removed from raytracer and can be added via 2 #include statements (wasn't that obvious)
Testing What's not tested with the latest updates: - atmospheric / volumetric effects - clouds - fog all this probably needs cleaning up after shader updates.
Also cleaned up lots of code and added comprehensive info on possible #define triggers for hidden options. Have fun.
|
|
|
Logged
|
Visual Artist, Director & Cinematographer specialized in emerging imaging techniques.
|
|
|
Patryk Kizny
|
|
« Reply #2 on: August 02, 2015, 12:35:10 AM » |
|
DE-PK-1.0.12 Changelog
Implemented dirt effect. Based on AO, takes into account directionality, has color noise and experimental glow mode. Cheap and easy but adds flavour. Inspired by dirt material in VRay renderer.
|
|
|
Logged
|
Visual Artist, Director & Cinematographer specialized in emerging imaging techniques.
|
|
|
Patryk Kizny
|
|
« Reply #3 on: August 02, 2015, 10:53:28 AM » |
|
A nice thingy with yesterday's update.
|
|
|
Logged
|
Visual Artist, Director & Cinematographer specialized in emerging imaging techniques.
|
|
|
|
Patryk Kizny
|
|
« Reply #5 on: September 16, 2015, 05:48:12 PM » |
|
Yeah, there's a lot of addons.
#ifdefs are added for the sake of modularity. You turn on only what's needed that way. Most of the #define statements that you can use are documented on top of the code (and should output to log window, but sometimes are cut). I posted also changelog in the code and above.
There were lots of modifications recently, especially after I moved to Nvidia (that development was on AMD), to make it run also on Nvidia cards. I'll post an updated raytracer soon.
But there's a lot stuff and it may be hitting your GPU limits if it's not a decent unit. I wasn't aware of limits on GPU for uniforms etc…
What's exactly that is not working for you?
|
|
|
Logged
|
Visual Artist, Director & Cinematographer specialized in emerging imaging techniques.
|
|
|
Crist-JRoger
|
|
« Reply #6 on: September 17, 2015, 08:16:06 PM » |
|
I run _Dirt_01 and see only gray background. I tried to run standard mandelbulb.frag with your renderer. #define PERFECT_DE - don't know what is it and for what #define USE_PK_BACKGROUND - don't work #define USE_PK_DIRT - don't know what is it and for what #define TAG_LAYERS - don't know what is it and for what #define DEPTH_PASS - don't know what is it and for what
|
|
|
Logged
|
|
|
|
ellarien
|
|
« Reply #7 on: September 18, 2015, 01:07:51 AM » |
|
When I try to run _dirt01.frag I get a grey background and these errors:
Could not locate sampler2D uniform: BgMap Could not locate sampler2D uniform: EnvMapDiffuse Could not locate sampler2D uniform: EnvMapSpecular
My GPU is the nVidia GeForce GTX 750 Ti -- not top-of-the-range, but it does OK on Fragmentarium as a rule. This was with v1.00 'Cologne', but I tried 1.06 and it didn't help.
|
|
|
Logged
|
|
|
|
Patryk Kizny
|
|
« Reply #8 on: September 18, 2015, 02:39:47 PM » |
|
Could not locate sampler2D uniform: BgMap Could not locate sampler2D uniform: EnvMapDiffuse Could not locate sampler2D uniform: EnvMapSpecular You need to load maps into slots in the samplers. The settings I included probably point to my harddrive files. #define PERFECT_DE - not sure, it changes DE handling somehow, it was present in the Kn2 renderer that I based on. #define USE_PK_BACKGROUND - it allows you to use flat 2D or equirect backgrounds #define USE_PK_DIRT - it enables use of the dirt effect as shown on the renderings above. It's based on AO and generally adds dirt in inset parts of the fractal. #define TAG_LAYERS #define DEPTH_PASS These are flags that enable output of Z-Depth as a grayscale OR layers color tagging. Are you getting any errors on build? It would be helpful if you were a bit more specific regarding what issues exactly you're facing.
|
|
|
Logged
|
Visual Artist, Director & Cinematographer specialized in emerging imaging techniques.
|
|
|
Crist-JRoger
|
|
« Reply #9 on: September 18, 2015, 06:51:21 PM » |
|
This logs and picture from Dirt_01.tiff Files Fragment shader compiled with warnings: Vertex info ----------- 0(59) : warning C7011: implicit cast from "int" to "float" 0(60) : warning C7011: implicit cast from "int" to "float"
Fragment info ------------- 0(199) : warning C7011: implicit cast from "int" to "float" 0(839) : warning C7011: implicit cast from "int" to "float" 0(840) : warning C7011: implicit cast from "int" to "float" 0(840) : warning C7011: implicit cast from "int" to "float" 0(841) : warning C7011: implicit cast from "int" to "float" 0(841) : warning C7011: implicit cast from "int" to "float" 0(853) : warning C7011: implicit cast from "int" to "float" 0(853) : warning C7011: implicit cast from "vec4" to "vec3" 0(869) : warning C7011: implicit cast from "int" to "float" 0(869) : warning C7011: implicit cast from "vec4" to "vec3" 0(877) : warning C7011: implicit cast from "int" to "float" 0(877) : warning C7011: implicit cast from "vec4" to "vec3" 0(1380) : warning C7011: implicit cast from "int" to "float" 0(1381) : warning C7011: implicit cast from "int" to "float" 0(1594) : warning C7011: implicit cast from "int" to "float" 0(1595) : warning C7011: implicit cast from "int" to "float" 0(1596) : warning C7011: implicit cast from "int" to "float" 0(1596) : warning C7011: implicit cast from "int" to "float" 0(1703) : warning C7011: implicit cast from "int" to "vec3" 0(1707) : warning C7011: implicit cast from "int" to "float" 0(1708) : warning C7011: implicit cast from "int" to "float" 0(1708) : warning C7011: implicit cast from "int" to "float" 0(1708) : warning C7011: implicit cast from "int" to "float" 0(1710) : warning C7011: implicit cast from "int" to "float" 0(1711) : warning C7011: implicit cast from "int" to "float" 0(1712) : warning C7011: implicit cast from "int" to "float" 0(1712) : warning C7011: implicit cast from "int" to "float" 0(1712) : warning C7011: implicit cast from "int" to "float" 0(2046) : warning C7011: implicit cast from "int" to "float" 0(2046) : warning C7011: implicit cast from "int" to "float" 0(2047) : warning C7011: implicit cast from "int" to "float" 0(2047) : warning C7011: implicit cast from "int" to "float" 0(2049) : warning C7011: implicit cast from "int" to "float" 0(2049) : warning C7011: implicit cast from "int" to "float" 0(2049) : warning C7011: implicit cast from "int" to "float" 0(2050) : warning C7011: implicit cast from "int" to "float" 0(2050) : warning C7011: implicit cast from "int" to "float" 0(2050) : warning C7011: implicit cast from "int" to "float" 0(2054) : warning C7011: implicit cast from "int" to "float" 0(2121) : warning C7011: implicit cast from "int" to "float" 0(2210) : warning C7011: implicit cast from "float" to "vec3" 0(2211) : warning C7011: implicit cast from "int" to "float" 0(2211) : warning C7011: implicit cast from "int" to "float" 0(2213) : warning C7011: implicit cast from "int" to "float" 0(2213) : warning C7011: implicit cast from "int" to "float" 0(2213) : warning C7011: implicit cast from "int" to "float" 0(2213) : warning C7011: implicit cast from "int" to "float" 0(2213) : warning C7011: implicit cast from "int" to "float" 0(2214) : warning C7011: implicit cast from "int" to "float" 0(2214) : warning C7011: implicit cast from "int" to "float" 0(2214) : warning C7011: implicit cast from "int" to "float" 0(2214) : warning C7011: implicit cast from "int" to "float" 0(2214) : warning C7011: implicit cast from "int" to "float" 0(2215) : warning C7011: implicit cast from "int" to "float" 0(2215) : warning C7011: implicit cast from "int" to "float" 0(2215) : warning C7011: implicit cast from "int" to "float" 0(2215) : warning C7011: implicit cast from "int" to "float" 0(2215) : warning C7011: implicit cast from "int" to "float" 0(2217) : warning C7011: implicit cast from "int" to "float" 0(2217) : warning C7011: implicit cast from "int" to "float" 0(2217) : warning C7011: implicit cast from "int" to "float" 0(2217) : warning C7011: implicit cast from "int" to "float" 0(2217) : warning C7011: implicit cast from "int" to "float" 0(2217) : warning C7011: implicit cast from "int" to "float" 0(2217) : warning C7011: implicit cast from "float" to "vec3" 0(2218) : warning C7011: implicit cast from "int" to "float" 0(2218) : warning C7011: implicit cast from "int" to "float" 0(2328) : warning C7011: implicit cast from "vec4" to "vec3" 0(2374) : warning C7011: implicit cast from "vec4" to "vec3" 0(2377) : warning C7011: implicit cast from "vec4" to "vec3" 0(2383) : warning C7011: implicit cast from "float" to "vec3" 0(2385) : warning C7011: implicit cast from "int" to "float" 0(2436) : warning C7011: implicit cast from "int" to "float" 0(2436) : warning C7011: implicit cast from "int" to "float" 0(2436) : warning C7011: implicit cast from "int" to "float" 0(2437) : warning C7011: implicit cast from "int" to "float" 0(2437) : warning C7011: implicit cast from "int" to "float" 0(2437) : warning C7011: implicit cast from "int" to "float" 0(2438) : warning C7011: implicit cast from "int" to "float" 0(2465) : warning C7011: implicit cast from "float" to "vec3" 0(2906) : warning C7011: implicit cast from "int" to "float"
|
|
|
|
ellarien
|
|
« Reply #10 on: September 19, 2015, 05:45:31 PM » |
|
OK, I got rid of the errors by uncommenting #define USE_PK_BACKGROUND, #define USE_PK_DIRT, #define USE_KN2_SHADER, #define USE_KB_IBL. The background image works if I point it at something that exists. But there is no object there, only the background and floor. Lots of warnings C7011, but I get those with DE-Kn9 and it still works.
|
|
|
Logged
|
|
|
|
Patryk Kizny
|
|
« Reply #11 on: September 20, 2015, 03:14:53 PM » |
|
Warning do not matter. Just ignore them. As for the objet not appearing - just try playing with the settings. Maybe the camera is off or the fractal is clipped to a volume that does not overlap it. First check the presets, otherwise just try to default everything.
|
|
|
Logged
|
Visual Artist, Director & Cinematographer specialized in emerging imaging techniques.
|
|
|
Patryk Kizny
|
|
« Reply #12 on: September 25, 2015, 06:23:37 PM » |
|
Dear all,
Here's another update including a bunch of new features. I included lots of examples.
|
|
|
Logged
|
Visual Artist, Director & Cinematographer specialized in emerging imaging techniques.
|
|
|
ellarien
|
|
« Reply #13 on: September 25, 2015, 11:01:59 PM » |
|
That one works for me. Thanks! May be too slow to do much on my card, though. (What controls the object transparency?)
|
|
« Last Edit: September 25, 2015, 11:11:13 PM by ellarien »
|
Logged
|
|
|
|
Patryk Kizny
|
|
« Reply #14 on: September 25, 2015, 11:36:09 PM » |
|
There's no transparency here. Although there's a matte mode for the floor and object materials which causes object catch only shadows. That's for advanced compositing.
Note the example I posted has almost everything enabled and may get slow or not run on slower cards. But you can comment out includes and defines to simplify the renderer.
|
|
|
Logged
|
Visual Artist, Director & Cinematographer specialized in emerging imaging techniques.
|
|
|
|