# All Questions

2,288 questions
70 views

### Skybox is rendered on the model instead of surroundings

I'm trying to implement Skybox in DirectX 11 (DirectXTK) but when I'm rendering skybox, then texture is rendered to my sphere model instead of showing skybox outside. Rendering code: ...
139 views

### Anisotropic GGX BRDF implementation. How is it related to isotropic GGX BRDF?

Introduction I am implementing anisotropic GGX BRDF and have encountered strange behaviour of my implementation. I thought that if I compare the microfacet distribution function I have with the one ...
58 views

### Should animations be locked to FPS or Fixed time

I have been working on a 3D engine and I am now implementing animations, but I can't find out whether or not to use the FPS of the engine or a fixed time method for the transformation's speed. Could ...
74 views

I found this picture When you zoom in to any part of the image, the background looks a bit noisy/grainy. See pixels around "violent violet" label: I'm trying to understand how to achieve the same ...
92 views

### How to capture frames in a MacOS MTKView for recording to a video

I have created a 3D model of a local outdoor performance space and I have an app that uses Metal on MacOS 10.14.2 to display the model. I want to create an animation by flying the camera around the ...
49 views

### My 2D translation matrix causes the box to be off screen when it shouldnt be

Now I know this isn't the way this is normally done so please bear with me. I am doing this this way so I know I have a solid conceptual understanding of everything that goes beyond example code. I ...
56 views

### Getting contrast color to a given color in RGB or ARGB or HEX

I am looking for a stable way to find a contrast/inverted/opposite color to a given one. Application of this is to find best possible color for foreground to give background.
62 views

### Specular/Diffuse light on an icosahedron opengl

I'm having a problem with my model here. I draw an icosahedron using GLUT, and the radius is set to 0.8. The info of the coordinates are listed below: (X and Z are calculated since our radius is 0.8) ...
38 views

### GL_SAMPLE_ALPHA_TO_COVERAGE and depth testing

I am currently looking into alternatives to my current, somewhat slow but exact, OIT approach. Specifically, GL_SAMPLE_ALPHA_TO_COVERAGE to convert the alpha value into a per-sample mask. ...
150 views

### Iridescence/Thin-film interference integration as a layer

I'm trying to integrate the thin-film interference effect described in the paper "Belcour, L., & Barla, P. (2017). A practical extension to microfacet theory for the modeling of varying ...
62 views

### Finding the normals of a tileable 2D surface extracted from 4D space

If I use a 4D noise function which returns a noise value and a four-part analytically derived gradient vector, I can create a 2D tile which is seamless (i.e. the opposite edges match) through ...
44 views

### Is there an analogue of OpenGL's ImageLoadStore in DirectX 12?

I'm trying to port part of an OpenGL program into an existing DirectX 12 software, at some point in their shaders they use OpenGL ImageLoadStore in order to store information in 3D Textures without ...
123 views

### Convert RGB image to YUV420 using a hlsl shader

I am new to shaders and I need to convert efficiently an RGB image to YUV420. I can convert the RGB image to YUV420 with a simple c++ program that uses the ...
156 views

### Physically Based Shading for Diffuse surfaces

So I am currently in the process of implementing Physically based Shading in my pathtracer using microfacet models and I'm quite stuck at comprehending light interaction with diffuse surfaces. First ...
26 views

### debugging VGA signal timings for 640x480 @ 60hz

I am trying to get started with implementing a basic display (i.e a simple red screen) onto a VGA monitor by programming a Xilinx spartan3a fpga for the same. I have studied about the signal timings ...
51 views

### Intersecting Frusta

I am trying to determine whether two frusta intersect in 3D space and to quantify this intersection as a percentage of one frustum volume (eg. 100% intersection meaning that the two frusta occupy the ...
37 views

### confused on isotropic BRDF

I am reading a paper and there is a part I don't understand: I am wondering why the isotropic BRDF only depends on the view direction and roughness? Why is the light direction not related?
102 views

### How is lighting done in Rasterization based pipeline?

So I wanted to know how do Game Engines like Unity3D and Unreal do lighting. I'm familiar with Ray-tracing, pathtracing based renderers etc. But not much with rasterization based engines. I do know a ...
96 views

The Unity Engine manual page Best Practice: Setting up the Lighting Pipeline has a section "Render pipelines" with an illustration of Tile Rendering and Cluster Rendering: The section then mentions:...
30 views

### Transforming arcs and perspective change

I have a SVG with group of independent arcs that move around common origin. On user event those arcs can change both their radii and start/end angles. On other user event the user can change view from ...
79 views

### Computing sRGB color from SPDs

I'm trying to write my own spectral path tracer and a bit stuck with converting computed SPDs to LDR RGB values. What I'm doing right now is convert sampled SPDs (in ...
54 views

### Inconsistent behavior involving VkPhysicalDeviceFeatures.fillModeNonSolid

I departed slightly from the Vulkan tutorial I was following and decided to draw a wireframe instead of a solid triangle. As soon as I call ...
58 views

### Modify camera matrix so that it renders a “chunk” of the frustum

Given a perspective projection matrix. How can one from it derive a set of matrices representing "chunks" of the viewport? So that the rendered chunks can be "stiched" to form an image "chunk times ...
51 views

### Confused on reflection coeffcient of Fresnel equations

I am reading a paper about layered materials. However, I am confused on the implementation of this paper. The following picture describe the layered material. r_ab is a complex reflection coeffcient ...
103 views

### Bump mapping with triangles and height maps

I'm trying to add bump mapping to my ray tracer, and I'm currently struggling to add bump mapping to it, as I don't seem to get the transformations from texture space to world space correctly. I have ...
57 views

### Efficiently drawing multiple instances of 3D objects

I was able to write the following working code to draw any number of "sprites" (defined as 2 tringles, 6 vertices) ...
46 views

### If you can use subdivision surfaces for 2D curves

I've seen how subdivision surfaces are good for 3D curves/modeling, but haven't seen anything on if it's good, or even usable, in 2D. My question is just that, if (a) you can even use subdivision ...
109 views

### What algorithm is used in this animation from Tatami Galaxy?

Is there a name for this type of effect where many area sizes are increased/decreased in relation to each other? I'm looking for some type of algorithm, formula, logic, etc. for recreating this. Here ...
61 views

### Problems with Subdivision Surfaces

It sounds like Subdivision Surfaces are better than NURBS but not as good as T-splines. I would like to know some of the disadvantages of Subdivision Surfaces, what they can't do or what they do ...
114 views

### Why do perspective correction based texture mapping do depth division

I'm currently trying to understand how works perspective correction texture mapping. I saw that actually it works by interpolating the z value of the three point of the triangle which the current ...
218 views

### How to calculate ray

In ray-tracing technique critical point is to calculate rays which came out from eye $E$ to target $T$ through pixel $P_{ij}$ on viewport. The "viewport" is represented as rectangle divided to square ...
34 views

### Convex hull around polygon for cave mapping

For the purpose of mapping caves, we survey new passages so that we take main polygon (survey from point A to point B) and on each "node" (survey station A in example), we shoot multiple "splay shots" ...
93 views

### How to get the 3D position for the point with (0,0) UV coordinates?

I have a 3D triangular mesh(vertices, indices, uv coords) that I'm rendering to the screen. Let's assume that the UV mapping is one-to-one. I'm trying to find a way to find the 3D position of the ...
127 views

### Naive Path tracer produces much darker images than Explicit light sampling

So I just thought of comparing the results from a Naive Path tracer and one using Next Event Estimation aka Explicit Direct Light Sampling. However the results from the Naive PT are very dark. Is ...
118 views

### Can't understand the Importance sampling GGX

I've read many articles relating to importance sampling of GGX. However, I still feel confused. The formula of GGX is : And many article says we should use this formula to sample: In the formula, ...
46 views

### How does a GLSL Sampler2D read a Vec2 UV coordinate to determine UV range

I am working with an atlas shader that steps through various sprite tiles within a single png atlas page to playback an animation with sampler2D. Looking at the shader code, I would expect to have to ...
69 views

### Convert shader from GLsl 1.50 to 1.30

I'm a newbie with OpenGl and I'm stuck in following the tutorial. I found this tutorial with these shaders ...
78 views

### What to reproject when doing temporal filtering in stochastic screen space reflection?

I am in the middle of implementing stochastic screen space reflection based on frostbite presentation here. On page number 39, it is stated that we need to reproject the ray intersection location ...
765 views

### Why Diffuse Light use max(N · H, 0) instead of just letting it be negative?

In Cg tuts, Diffuse Section Surfaces that face away from the light will produce negative dot-product values, so the max(N · L, 0) in the equation ensures that these surfaces show no diffuse ...
110 views

### Need help with change of basis (world to camera frame)

I'm reading up on coordinate systems and geometric transformations but the change of basis topic still confuses me. I found this exercise but, honestly, I wouldn't know how to begin: Given a world ...
38 views

### Make a texture a clickable Button

What would be the best way to make a texture a clickable button? Suppose I have a Room (respresented by a 2D texture), where there are buttons. Would I in the main loop: check when the mouse is ...
78 views

### Why don't Direct3D/Metal support texture swizzles?

To be clear, I'm talking about behavior like https://www.khronos.org/opengl/wiki/Texture#Swizzle_mask, not "normal" myColorVariable.rbgr swizzling in a shader. I ...
341 views

### Multiple Importance Sampling in Path tracer produces Dark Images

So I recently implemented Multiple Importance Sampling in my path tracer which was based on next event estimation. The problem is without MIS I get images like, This is obtained by setting ...
93 views

### Texturing an “infinite” plane

I am rendering an infinite plane as described in the following answers: https://stackoverflow.com/questions/12965161/rendering-infinitely-large-plane https://stackoverflow.com/questions/7380250/how-...
130 views

### Why does some text on my laptop have gray-scale pixels and some have color pixels?

In this question I generated the images below to explain why I can't use TTFs for that 1-bit display application. But now I would like to understand from the perspective of a non-expert, why is some ...
105 views

### Comprehensive explanation of conservative rasterization algorithm

I am trying to implement conservative voxelization as part of real time GI in my hobby rendering engine. I find this article by NVIDIA. I am stuck at understanding the second algorithm. The problem ...
40 views

### Export Model Textures Per Face

(Note that as far as attempts go, I can't find anything that helps me) I have a 3D polygon, and for simplicity's sake it's going to be the one below: It is textured using the UV map below: Side ...
46 views

### Composition of decomposed transformations

Say I have a scene graph, and each node has a scale, rotation, and translation. Can I combine these into a single scale, rotation, and translation?