Problem got resolved by changing Phong shading parameters of ambient color, diffuse color, specular color, shininess and alpha.
Previously these values were used:
// Colors components from 0 to 1 along with their corresponding hexagonal
ambient RGB = (0.259, 0.522, 0.957) or #4285F4
diffuse RGB = (0.49, 0.49, 0.49) or #7d7d7d
specular RGB = (1, 1, 1) or #...
What happens here is that your "screen" the game renders to is still the same resolution, and that is then crudely scaled to your physical screen.
You need to override the screen resize event and set your back buffer size to your actual screen dimensions.
This generally means creating an event handler such as this:
private void Window_ClientSizeChanged(...
The second argument in DrawRay is an offset.
The argument you provide to a LineRenderer is a position.
shootDirection.normailized * m_Range is an offset from zero — you want to add your start point to get an absolute position.
Trianlge strips don't necessarily give increased performance
In the old days (pre-1998/99) GPU vendors used to recommend triangle strips as the optimal primitive type, but that was in a very specific case - non-indexed triangle strips using the GL_TRIANGLE_STRIP mode via glDrawArrays or glBegin/glEnd.
In 1998/99 something happened - Quake III Arena was ...
Not all of the software you listed calculates lighting the same way, or the same in all circumstances. There are a few different approaches:
Offline raytracing / path tracing are used by 3D modelling software like Maya/Blender/Houdini when you want to output a high-quality final render, or a frame for something like an animated film.
In these techniques, ...