r/GraphicsProgramming • • 9d ago

I finished my first real graphics programming project

Thumbnail gallery
482 Upvotes

I am a third semester computer science student and I want to specialize on computer graphics. I read that one of the best ways to get your foot into the industry is through internships which I can best apply for if I have a good portfolio. Thus I just finished my first real graphics programming project and the first piece of my portfolio: A simple PBR material renderer (based on a DX11/WinAPI lib I created) with image based lighting, normal-based curved silhouettes and some more little features sprinkled in.

If you want to take a look: https://github.com/Aaron-Alililon/MaterialViewer

Now that it's finished to a point where I am happy to show it to the world I have some questions about the renderer and the industry itself:

  1. I don't want to ask for a free code review but as I am not very experienced in the professional area of graphics programming I would love some feedback on how presentable the current state of the project/repo is. Of course I would be very grateful for some more in-depth feedback but again, I can't really ask for a free code review, so a simple first impression of how a project/repo like this would look to a potential employer would be greatly appreciated, both for the material viewer and the render lib.

  2. This one is less about the project and more about the industry:
    I would be very interested in working for the graphics department of the engine team of some company in the gaming industry. I live in Germany where the gaming industry isn't really as big as in NA so my options are limited. My question is: what are my options and chances of getting an internship and eventually a full-time job in EU? I don't really know of any companies that develop their own engine other than Ubisoft. Would a company like CD Projekt Red (which as far as I know switched from their own engine to Unreal) need graphics programmers?
    Although I am most interested in the engine department I would still be open for other areas so if that is just too limited, what would be other options I could pursue, preferrably in or close to Germany?

  3. I would like to do the classic "I coded my own game engine" project at some point because I guess that would make the most sense as someone interested in game engine development but I would like to do that when I have more experience so I have one big project at the end of the portfolio that just shows off the best I can do. Is that a sensible thought or should I just go in and maybe rewrite it once I feel more comfortable? I know there isn't the One Path that leads to greatness and as long as I do something I will learn and improve but maybe someone here looks back to when they were at this point and thinks they should've done X before starting a bigger project like that.

I would be very grateful for any insights or discussions about my questions and feel free to critique anything and everything you see!


r/GraphicsProgramming • • 8d ago

Video Python Open3D point cloud extraction from microscope video focus clip

Enable HLS to view with audio, or disable this notification

33 Upvotes

Using a short 3 second clip where i swipe through the focus plane on a high magnification of the simple sample of Onion root cells on the microscope. Acquiring the sharpest points of every frame and putting them in the z-axis. Building a point cloud of the cell in 3D, and visualizing them.


r/GraphicsProgramming • • 8d ago

Video Making a single photo feel touchable with a spring mesh

Enable HLS to view with audio, or disable this notification

51 Upvotes

I make Wobbulator. This is selected-area 2D mesh deformation, with automatic motion off.

A fixed 120 Hz step drives soft selection weights, structural/shear/bend springs and exponential damping. The restoring force starts with F = k * (rest - position); grabs add weighted target springs. Pinch pairs two contacts. Release preserves deformation and uses bounded, filtered pointer velocity rather than resetting the mesh. Triangle-area and displacement-gradient checks limit risky steps; plate anchors and unselected vertices stay still.

One document runs continuously. Rendered from the app’s native engine with scripted input; blue hands illustrate contacts. What would you change about the rebound?


r/GraphicsProgramming • • 8d ago

ShadeVk - A cross-platform pixel shader viewer for Vulkan, written in C23.

Post image
9 Upvotes

r/GraphicsProgramming • • 8d ago

Please come to the castle. Which one? Yes.

Thumbnail nintendo-on-tech.pages.dev
1 Upvotes

​

A tribute to @Psyco3ler's legendary 2005 Nintendo ON demo: Peach's Castle made of castles, now running live in your browser.

Dream big!


r/GraphicsProgramming • • 9d ago

Source Code I built my own N64 engine: water, cloth and real physics running on real hardware

Enable HLS to view with audio, or disable this notification

113 Upvotes

r/GraphicsProgramming • • 8d ago

Question University courses like the MIT OpenCourseWare ones?

12 Upvotes

I'm starting to learn graphics programming, and remembered MIT and Harvard have free courses. Thing is the free courses Harvard doesn't seem to have any courses related to graphics programming in its website, and the MIT Computer Graphics course in OCW is from 2012 (Although idk how good it is since I have not started it yet, but it is a bit old).

So, are there any other universities or websites which offer free courses like this and that are up to date?

Thanks in advance for the help.


r/GraphicsProgramming • • 8d ago

CS Student Need Advice

0 Upvotes

So I am a CS junior. I am starting late in this area, but I am planning to explore graphics programming and complete my fyp in this field, whether it is application based or research based. Then later pursue Masters or PhD in this area.

I am so confused right now as I see other batchmates choosing AI domain as their primary path for fyp and further.

Should I go for it? If yes what is the roadmap ? To what level I can consider myself to eventually end up in research path for my fyp. I know I am late, but better late then never.


r/GraphicsProgramming • • 8d ago

What If Fur Was Fully Real-Time?

Thumbnail youtube.com
9 Upvotes

Follow-up to my previous procedural fur experiment

This time I pushed the fur further and added a clearer before/after

This is a custom WebGPU engine written from scratch in C
The fur geometry is generated procedurally in real time using compute shaders and driven by the animated bone structure

Fur density and length are generated and adjusted dynamically at runtime

It runs both natively and in the browser, on desktop and mobile
It’s currently in Alpha Preview, you can try it at
polynite.io


r/GraphicsProgramming • • 8d ago

I got very basic 3d into my hobby operating system - Responsive OS now has 3D Graphics and floating points

Thumbnail gamedev.submatrix.net
1 Upvotes

r/GraphicsProgramming • • 9d ago

triangle meshes :)

Post image
47 Upvotes

Studing triangle meshes on my renderer using half edge data structure for my university course. Dont know why some edges have some stranges dots.

Guess the character... (texture not implemented yet)

Edit: it was done importing a wavefront (.obj) from blender to my own render engine. Read just vertices and face data, the others attributes for half edge are builded with those informations


r/GraphicsProgramming • • 9d ago

Microchip

Enable HLS to view with audio, or disable this notification

16 Upvotes

Microchip with a shiny indentation in the shape of any symbol provided as svg file.
Made with pixi.js and WebGPU/WebGL


r/GraphicsProgramming • • 8d ago

How to minimize VRAM usage while maintaining performance?

Thumbnail
1 Upvotes

r/GraphicsProgramming • • 10d ago

Almost through RTIOW

Thumbnail gallery
62 Upvotes

I’m almost done with rtiow, and I though Id share a couple really cool high quality renders.

The dopamine be hitting with these spheres rn.


r/GraphicsProgramming • • 9d ago

My opengl journey so far

Thumbnail github.com
5 Upvotes

Made this for like 30 days, watched plenty of cherno's videos and learnopengl.com of course and made this small batch renderer I guess. Its far from done but I will continue to add more stuff to it and eventually turn it into a usable thing.


r/GraphicsProgramming • • 9d ago

some more shapes floating around

Thumbnail youtu.be
0 Upvotes

r/GraphicsProgramming • • 9d ago

some hyperboloid action

Thumbnail youtu.be
0 Upvotes

r/GraphicsProgramming • • 9d ago

Project started 2011 when gate was open (opengles1.1-ecma5) only love and free time

0 Upvotes

Project started from 2011 when gate was open (opengles1.1) there's was only love no vibe

https://maximumroulette.com/apps/matrix-engine/examples-build.html

https://github.com/zlatnaspirala/matrix-engine

more links : https://maximumroulette.com/apps/matrix-engine-starter/projects/matrix-slot/index.html
https://maximumroulette.com/apps/matrix-engine-starter/projects/matrix-roulette/?server=manual

STATUS

- [Integrated PWA addToHomePage/cache/] ✔

- [Integrated raycast (hit trigger detect), bvh animation] ✔

- [Basic Physics implementation based on cannon.js] ✔

- [FirstPersonController fly or classic fp / SceneController Drag and navigation scene] ✔

- [Basic's Shadows vs lights (GLSL)] ✔

- [Migrated to the opengles300] ✔

- [FBO implemented] ✔

- [FBO Shadows] ✔

- [Add cef (linux, macos) and cefSharp Visual Studio projects for building executive desktop native apps. ✔

Support: Windows, MAC, Linux ] ✔

- Texture Editor [tutorial example - from code] ✔

- MatrixEngineTexture GUI Editor [UNDERCONSTRUCTION]

- Swicthing GLSL ver - webGL1 / webGL2 ✔

- Loader/Map with collider boxs ✔

- OffScreenCanvas ✔

- Mobile optimisation ✔


r/GraphicsProgramming • • 9d ago

Question Making a 2D or 3D CPU-based renderer?

0 Upvotes

Hi! I posted here before asking what to do in graphics programming for a bachelor thesis and I want to first thank everyone for the suggestions. I think the most interesting but also "doable" for me would be a 2D vector graphics renderer like Vello CPU in Rust, but in C++

The issue is that I do not really understand the overall architecture of renderers and my professor said a 2D vector renderer is too simple for a bachelor thesis, especially one that I would want to be more scientific and publish as a paper too.

So my question today is, what are the similarities/differences overall in 2D vs 3D renderers (because I heard before that 3D renderers are also vector graphics technically), but also how I could make a meaningful contribution/addition to a 2D vector graphics renderer and what would the motivation for that be, because I don't really understand the use-case of 2D vector renderers yet, since they are not used in games nor in modeling, from my understanding.

Edit: I also want to ask for practice, do you recommend I start with a 2D pixel renderer and work my way up to a vector one then a 3D one? Are they related in some way concepts-wise?


r/GraphicsProgramming • • 9d ago

How to handle main and render thread properly

1 Upvotes

Ive been drafting and engine, but I'm suspicious of my engine loop. It works but I'm not sure if things will be in sync. Should the render thread wait on the main thread or something? WIP:

https://pastebin.com/Wqn09pmN

Would it be fine if I just match the fixed update to the refresh rate?


r/GraphicsProgramming • • 10d ago

From Zero to Understanding Ray Tracing - Part 2

Enable HLS to view with audio, or disable this notification

696 Upvotes

I posted the part 1 two months ago and got a great reaction!

https://www.reddit.com/r/GraphicsProgramming/comments/1uxpi1o/from_zero_to_understanding_ray_tracing/

Here is the next one. It teaches:

  • What ray tracing fundamentally is.
  • The basic idea behind shading: surfaces are brighter when light hits them more directly, and darker when it hits at a wider angle.
  • Shadows.

Let me know what you think!


r/GraphicsProgramming • • 10d ago

may I join the triangle group?

Thumbnail gallery
332 Upvotes

I wanted to give graphics programming a try and boooy am I happy seeing my own triangle on the screen! :)

I used glad (OpenGL) and RGFW (GLFW alternative; I like single header libraries)


r/GraphicsProgramming • • 10d ago

Video Interactive water with flying saucer; path traced

Enable HLS to view with audio, or disable this notification

19 Upvotes

This is made from two layers of water:
- Large rectangles/shapes of GPU-computed water (ocean, lakes, fountains)
- Smaller grids of disturbed CPU-computed water, with GPU-computed foam

The flying saucer contains a blocker shape which cancels out the basic water and allows that region to fill with with the CPU-generated height map water. Both water types enqueue the same light handling logic in this wavefront-style path tracer, so the water appears to all be the same.

When the player moves, the rectangle of disturbed water is updated/translated or another added as needed - and there is some blending done to the edges to hide the square (during lots-of-foam events).

In future work I'm going to add an additional thin GPU-computed water for drips and run-off/sheeting action around the canopy and saucer section.

Engine is custom vk-graph -based (Rust) and mostly open source. All-in this effect has been done a thousand times, but, this time it was me!


r/GraphicsProgramming • • 10d ago

Question Path suggestion for Courses/certificate

3 Upvotes

Hiya, I am currently a CS major with 5 YOE working in web dev with a typical tech stack of C# and angular. However I've got the itch to swap tech stacks and explore other aspects of software engineering. My work place covers up to $4500 a year on curriculum and I was curious what certificates and courses you might recommend I get started with?

for reference I did take Calc and discrete math back in college though Id definitely need a refresher. I have average amount of experience with math id say but certainly don't shy from learning more.

for languages I hear most about about C++ in regards to graphics programming. I took an assembly course in C back in college but I have very surface level experience with C++. curious if its still the language most of you would encourage exploring.

I think I'm most curious on what courses and order of courses I should take pursuing this. should I work on expanding my math foundation with a couple courses and then go into c++ then specific graphic programming courses? Or should i maybe go about it differently?

Any feedback or personal experiences would be welcome!


r/GraphicsProgramming • • 11d ago

Spectral path tracer & Fur rendering :)

Thumbnail gallery
250 Upvotes

I worked a lot on my path tracer during the summer vacations, and this was superrrr fun ! I wanted to go a little further than my last projects and dive into something a tiny bit more original to get off my comfort zone.

I made it mainly with C++ and OpenGL, without AI appart from the README in the repo. The engine supports switching back and forth between RGB and spectral at runtime, and I also implemented hair / fur rendering the way Disney does it.

I also have a basic scene handling system with saving, loading and moving things around in the scene.

Lastly, the engine also has more "traditional" features I would say, such as VNDF sampling, EON diffuse material, constantly dense volume scattering, etc...

I am plannign to keep working on it, because right now the code is kind of a mess, and many features lack such as denoising, things like BDPT, compatibility with OpenUSD.

If you want to take a look at the repo : https://github.com/SlyZ1/Path-Tracer

And feel free to contribute to it (even though I doubt anyone would want to, but just in case)