All Questions
3,925
questions
0
votes
0
answers
15
views
Clip Space View Frustrum Culling Not Working Properly
I don't understand why this happening. I included the code that I am using to check if a vertex is inside the view frustum.
...
0
votes
0
answers
28
views
Unable to compute fresnel reflections properly
I am implementing fresnel reflections for materials in my renderer.
According to this source, here the look I should obtain when rendering a sphere over a grey background:
I have two implementations. ...
0
votes
1
answer
70
views
Does fresnel reflection make sense for metals?
I am implementing fresnel reflections for materials in my renderer.
Does it make sense for metals?
Here my implementation:
...
1
vote
1
answer
36
views
How to avoid declaring sampler outside of statement?
How can I avoid having to declare the sampler outside of the if statement in this shader code sample?
...
0
votes
0
answers
26
views
Vertex attribute alignment <4 bytes
I know that vertex attributes sourced from vertex buffers in OpenGL need to adhere to the basic alignment requirements of their base types, so e.g. 4 bytes for floats or uints. However, I am unable to ...
0
votes
0
answers
22
views
Partial Derivatives of Spherical Angles and Refracted Ray w.r.t Surface u,v
I am reading on "Specular Manifold Sampling" paper with the implementaion(for the simple case) here on Mitsuba at github. As part of the calculation it needs to compute
partial derivatives ...
0
votes
0
answers
20
views
interpolated normal vectors after tessellation. How to hash patch corner / edge vertices?
I have a 3D geometry (an asteroid) that is to be tessellated with respect to the camera position. Each vertex in the original mesh has a unique position and is stored once (VBO with IBO)
In the ...
0
votes
1
answer
40
views
Does a BSP tree need to be rebuilt every time the camera's position changes?
I'm not a computer graphics engineer. I'm more of a quality engineer (primary language is C++). I've just started learning by myself about acceleration structures in computer graphics, especially ...
0
votes
1
answer
30
views
Random spaces between textures
I am trying to make Terraria like game using WGPU and rust. There are gaps between tiles. The gaps are bigger and more common as I get far from world center. I've read that nearest filtering should ...
0
votes
0
answers
104
views
Path tracer -- How to debug erroneous behaviour?
Edit: I've pinpointed the problem. If I change:
local_colour *= (rayPayload.color.r*mask.r + rayPayload.color.g*mask.g + rayPayload.color.b*mask.b);
into
...
0
votes
0
answers
24
views
How to slim nose using face mesh [closed]
I want to implement the nose slimming beauty effect programmatically. I was seeing the YouCam app, and they do it in a perfect way. How can we achieve that in code? Are there any techniques or free ...
0
votes
1
answer
38
views
How are strings for debugPrintfEXT handled in glsl?
Glsl does not support string / char data types, but obviously debugPrintfEXT works and takes some form of string. How are these handled in glsl?
Ideally I would ...
1
vote
1
answer
45
views
Confusion regarding incident direction in render equation
I am studying from pbrt-v3 and the rendering equation has just been introduced as
$$
\underbrace{L_\mathrm{o}(\mathrm{p},\omega_\mathrm{o})}_\text{Outgoing radiance }=\underbrace{L_\mathrm{e}(\mathrm{...
0
votes
1
answer
78
views
Faring a region of a mesh connecting two curves
In the book Polygon Mesh Processing, there is a section dedicated to fairing. In particular page 59 has this lovely figure:
I am specially interested in the rightmost image. According to the text ...
1
vote
1
answer
33
views
How is HTML Alpha-Blending Different than GIMP?
I have some graphic drawings of the floors of a hours that I want to display on a web page. Drawn in GIMP, there are several layers all with "normal" mode:
From bottom to top, the layers ...
0
votes
1
answer
39
views
Does CMYK values provide more colors than RGB?
We know that in the RGB system we have three primary colors and each of them has a value from $0$ to $255$ (or $256$ values in total). So all possible colors are $256^{3}=16777216$.
But in the CMYK ...
0
votes
0
answers
16
views
How can I understand the logic of Fast Point Feature Histograms (FPFH) descriptor?
I have been using FPFH features quite a lot in global registration and key-point extraction a lot, I also looked pcl page that tries to explain what it is, but fails to give detail to reader in my ...
1
vote
0
answers
30
views
How to transform face mesh?
We can use ARcore to create custom textures and 3D models for Augmented Faces, like the augmentation of a Fox ears. But aside from augmenting 3D objects, can we "transform" facemesh, for ...
0
votes
2
answers
49
views
Can Vulkan Queue Families be separate but identical?
I was trying to find examples of GPUs with more than 3 queue families to see what edge cases programmatic selection of compute and transfer queues might encounter.
This card has six. Two of the extra ...
1
vote
1
answer
47
views
Is it possible to read arbitrary data at arbitrary array offset in glsl?
TL;DR
In a Vulkan / GLSL program, I have several shader files, all accessing the same material buffer of arbitrary data. All materials have an arbitrary layout, e.g. one might be a float, one might ...
2
votes
1
answer
30
views
What is a smart way to fill in the 'next' pointer of a opposite half-edge of a boundary?
I was reading this question regarding half edges from 3 years ago and the selected answer seemed pretty smart to me. However, while actually implementing it I'm confused at the part where I have to ...
1
vote
1
answer
34
views
Need help understanding this simplification/optimization for a very basic GLSL shader
i'm currently following a tutorial on youtube to get started with computer graphics (shaders) and it contains the following GLSL code:
...
1
vote
0
answers
53
views
JPEG Corrupted file fixing
I had an old, broken hard disk containing a lot of JPEG files.
I took that hard to an information recovery company.
The company was able to extract part of the files well, But there are many others ...
1
vote
1
answer
30
views
Best approach for slicing texture images for raycasting
I'm working on a 2D (pseudo-3D) raycaster which operates on a 2D tile grid.
For each ray sent out, the screen draws a rectangle with a certain height depending on the distance between the camera and ...
1
vote
0
answers
33
views
How to find point on mesh at a minimum distance from ray
I'm searching for an efficient data structure and algorithm to compute the minimum distance between a ray and a set of meshes in 3D.
What I expect as a result are the coordinates of the nearest point ...
0
votes
0
answers
25
views
re-writing the rasterizer of a pipeline
I have designed my graphics pipeline, actually similar to what exists now, you know, vertex shader, then rasterizer, interpolation, fragment shader and so on. But, some stuff are changed in my ...
0
votes
1
answer
39
views
Conditionally sample from texture in shader
I'm building a little 2D graphics library in Rust/WGPU as a means to learn graphics programming. I want to draw an outline around a shape and specify the outline's color. All of my shapes have a ...
0
votes
0
answers
187
views
Vulkan backward-only path tracer with caustics
TL;DR -- who has discovered, in the past, a backward-only path tracer that generates caustics not needing extra convergence of any kind? I'm collecting similar algorithms, in order to fully understand ...
0
votes
1
answer
23
views
How to measure distortion of a parametrization?
If you have a map from a mesh into the 2D plane. How do you measure its distortion? I know that theoretically what you do is express the differential map of the transformation then use SVD to figure ...
1
vote
1
answer
31
views
Sampling scattering direction around directions other than the last ray direction
In a path tracer, if we want to sample a ray direction in scattering medium, we can use phase function sampling, which actually use the direction of the ray before sampling as a sort of anchor to ...
1
vote
1
answer
39
views
Avoiding gimbal lock in spherical movement around an object - Python
I am programming a camera viewer in Python to move around an object on a sphere given YPR Euler angles (intrinsic) from the user.
Everything seemed nice until I pitched the camera 90 degrees up/down. ...
0
votes
0
answers
31
views
AMD GPU specific triangles disappearing by subsequent draw calls in same frame
we have a Windows/DirectX11 2D Renderer that paints textured triangles to the screen from back to front. There is no face-culling or depth test activated.
Now on AMD GPUs it happens randomly that an ...
0
votes
0
answers
26
views
Object appears in unintended parts of the screen when using manual WorldToScreenPoint
Hy guys I'm new to 3d graphics and i lack some Linear algebra knowledge. I tried to recreate Unity's worldToScreenPoint method with kotlin on android. I copied some code from their forum and wrote ...
0
votes
0
answers
13
views
HTML Canvas not drawing
I'm working on a 3D Renderer with the canvas element and JS but currently the cube I made is not rendering. I currently have it set to just render a wireframe of the cube and am hoping to render the ...
1
vote
1
answer
55
views
How to calculate ray-origin and ray-direction in vertex shader working universally for any projection and using interpolators for performance
I have been reading and watching many raymarching tutorials, but almost all of them are only working in the perspective projection. Almost all assume, that to calculate the ray direction, you just ...
0
votes
1
answer
37
views
Tessellation evaluation shader: vertex duplicates on triangle tessellation
I was very surprised when I ran my tessellation evaluation shader, which only counts the number of vertices through an atomicAdd command.
for the following tessellation levels:
...
0
votes
1
answer
61
views
GLSL get min/max index of vec3
I have written a function in GLSL that returns the min index (index 0 is the x component, 1 is the y component, and 2 is the z component) of a vec3 variable.
...
0
votes
1
answer
17
views
OpenGL texture unit bindings - Why is a single texture mapped to both texture units when each are individually assigned?
I am using NVIDIA Nsight to debug my OpenGL state. In the screenshots below:
I generate a single texture with the ID 10.
I activate ...
0
votes
0
answers
19
views
Questions about equi-angular sampling
Equiangular sampling is a sampling method for point (sphere) emitter in scattering medium. While it claims to be very efficient when dealing with point (sphere) emitter in scattering medium (see this ...
0
votes
0
answers
51
views
Precision errors with raytracing normal
I'm writing a raytracer in Java that draws a scene containing the elliptic paraboloid defined by the equation $F(x,y,z)=x^2+z^2-y=0$, as well as the hyperbolic paraboloid defined by $G(x,y,z)=x^2-z^2-...
0
votes
1
answer
25
views
Is MultiDrawElementsBaseVertex bound by index type?
With glMultiDrawElementsBaseVertex it becomes possible to render multiple sets of indices in one draw call. When using for instance ...
1
vote
1
answer
57
views
enumerate vertices from tessellation evaluation stage (Triangle patch)
Is there any way to enumerate the generated vertices of a tessellation patch (triangles only) inside the tessellation evaluation shader? The tessellation levels will only be integer values with ...
0
votes
0
answers
22
views
Volumetric mesh processing: impact of facet removal on connectedness?
I am working with volumetric meshes - meshes that have vertices (0-cell), edges (1-cell), facets (2-cells) and volumes (3-cells) - and I'm interested in removing facets without breaking connectedness.
...
0
votes
0
answers
17
views
How to interpolate alpha from CURRENT_ALPHA to TARGET_ALPHA for each pixel in shader language? (Godot/GLSL)
I want to make "trails" of objects on my shader that appear and disappear gradually.
I am getting pixels (for fragment shader) where objects are from uniform texture.
Basically, I have my ...
1
vote
1
answer
57
views
Vulkan Syscalls
I'm working on educating myself more about computer graphics, and the more I learn and play with the technology, the more I get frustrated by the dependencies on C++ (even though I know why it exists)....
0
votes
0
answers
49
views
tilling the Hyperbolic plane
i am trying to tile a hyperbolic plane using the poincaré or Beltrami–Klein disk model. I am doing it recursively and i don't know how to detect overlapping tiles. I think they are causing bugs ...
0
votes
0
answers
28
views
Find good gl_TessLevel for edge distance and edge length
I have a triangular mesh that is read from an ".obj" file and is to be tessellated with respect to the camera position.
I try to avoid T-junctions by tessellating common edges with the same ...
0
votes
0
answers
51
views
What algorithms are typically used for finding 'PCB Trace'-like paths?
I am analyzing a large amount of Layers 0-4 Network Data. I am trying to render diagrams dynamically showing the Network Devices involved in the data (Desktop, Switch, Router, Server, etc.) and how ...
0
votes
1
answer
35
views
Can raytracing be used to determine a certain gas distribution in a real planet's atmosphere?
I want to calculate the capacity that the planet Mars has regarding protecting against UV-light for a final project I will be doing my last year in upper secondary school. UV-light is mainly absorbed ...
2
votes
1
answer
69
views
White spots when rendering diffuse material with environment light
I am trying to implement a simple shader. A round ball object is rendered with uniform albedo and I noticed some strange white spots on the outputs.
I perform importance sampling with 512 light ...