Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 11 Jun 2008
Offline Last Active Mar 09 2015 06:27 AM

Posts I've Made

In Topic: Is Unreal Engine a good start to learn rendering ?

24 February 2015 - 03:49 PM

If your goal is to learn how rendering works, then building your engine will be a great journey.
Think about it:
- your first window
- your first triangle/poly
- rendering an object
- making a camera
- your own shaders

And so on.
You could get a book as a starting point, for example dx 11 book from frank d luna (assuming you "know" and can code in c++)



Hehe, thanks, i already read (most of) Frank's book, that's where i started.

I already made all those things you mentioned, and that's how i came to this odd conclusion :-)

In Topic: Is Unreal Engine a good start to learn rendering ?

24 February 2015 - 08:12 AM

Gotcha ... I guess i'll use both :-)


I can see how important it is to have strong fondations, but sometimes it helps to see the end results and all the required inputs to know why you'll have to build this input in your engine.

In Topic: Is Unreal Engine a good start to learn rendering ?

24 February 2015 - 12:13 AM


If you want to learn rendering programming. Is it really a smart move to start with working on your own engine ?
The more i think about it, the more i think it should be the opposite.
Why is that so?




Well, i think it takes a massive part out of the equation, and allow you to focus on one thing because you know the rest if working properly.


It's like, if I wanted to wanted to create heads up display for cars, should i start by building the actual car, research how a combustion engine works, aerodynamics, etc... and once the car is kind of working, start working on the actual dashboard hopping the electronic i setup won't fail me and send me wrong inputs & metrics ?


I remember at some point i wanted to have a proper sky, and i found this guy making a good one in GLSL : http://devlog-martinsh.blogspot.ca/2013/11/waterunderwater-sky-shader-update-03.html

I only studied HLSL, so i needed to port it. The original shader was quite complex and i was having a hard time implementing it. I wasn't sure the problem came from my HLSL code, or actual engine feeding wrong values to the shader. So i decided to port it in 3DSMax first, and it worked wonders. I had immediate feedback and lot more tools to experiment (sliders for shader constants and such). This allowed me to have a better understanding of the shader, and i easily implemented it in my engine afterward.

I didn't have to worry about things like properly computing normals as Max was doing it for me (i had to at some point in my engine, but i knew my shader code was correct at that point).


Now i want to study effects like DOF, chromatic aberration, and film grains. I can't help to think it will be a lot easier to implement this in a shader graph node editor, and once it works, try to break it down in actual HLSL.

In Topic: Can't fix shadow acne with bias

16 February 2015 - 08:44 PM

Hi L. Spiro,


Thanks for your help, greatly appreciated, i am learning a lot.

It seems the front culling approach just doesn't work well in my test case. The result is simply the same as my original code :






Normal offset just for reference :




I can see how internal faces of a cube would cast shadow over the next one and cause this artifact in the process.

I guess i would need to eliminates these useless faces and the issue would naturally disappear, but doing so might be tricky because everything here is based on instancing.

I assume i would need something like a geometry shader to remove internal faces right before creating my shadow map, but i am not familiar with those yet (not even sure that's the proper name for such operation, or even if it's a the good approach).


Anyway, i'll stick with the normal offset trick for now until i get better to implement fancier techniques :-)

In Topic: Can't fix shadow acne with bias

16 February 2015 - 12:01 PM

Hi there,

So i tried the front culling approach and it did not work :(





It also shows that my cubes are not perfectly connected as we can see a very thin line of light at the base of the cube casting shadow.

I tried this quickly during a lunch break though, so i try harder tonight when i get home.


Thanks :-)