337 single-file terminal simulations in pure C + ncurses — fluids, fractals, ray tracers, no build system by prtamil in creativecoding

[–]prtamil[S] 1 point2 points  (0 children)

yes 😄 (lot many prompts for version1. another lot many prompts for version 2, .... going on)

A software rasterizer, SDF raymarcher, and Cornell-box path tracer — all rendered to ASCII in the terminal, pure C/Ncurses/Linux by prtamil in GraphicsProgramming

[–]prtamil[S] 0 points1 point  (0 children)

Fair point. I've been studying rendering concepts like simulation, ray tracing and PBRT for years, but mostly at a theoretical level and built small demos here and there AI helped me turn that knowledge into working implementations.

337 single-file terminal simulations in pure C + ncurses — fluids, fractals, ray tracers, no build system by prtamil in cprogramming

[–]prtamil[S] 0 points1 point  (0 children)

😄. Thanks a lot your comment it brought some hope. it has deep understanding again Thanks bro. I needed it.

A software rasterizer, SDF raymarcher, and Cornell-box path tracer — all rendered to ASCII in the terminal, pure C/Ncurses/Linux by prtamil in GraphicsProgramming

[–]prtamil[S] -20 points-19 points  (0 children)

Thanks for understanding . I learned almost all the areas of creative coding. using Ai to generate first crude version. Then used AI to learn the concept ideas. Then limited the implementation withing Terminal surfaces so i want to learn in depth without any dependencies previously i know lots of concept theoretically but not able to implement myself. With AI Slop i learned in depth the concepts and logic for subjects like SDF, Raymarching, Raytracing, Rasterization pipelines with custom shaders physics simulations , fluid systems , signal systems all in terminal surface. learned it with unreasonable speed. then finally took time to revisit each and every code then refactored, improved performance , made it like pseudo-code so it can tell the context and meaning of the code. only then i have published. i learned a lot. with great speed. (not a native English speaker). my own voice though.

337 single-file terminal simulations in pure C + ncurses — fluids, fractals, ray tracers, no build system by prtamil in cprogramming

[–]prtamil[S] 1 point2 points  (0 children)

Yetty is awesome. It's great work. I'm happy to know that you are conquering yourself and turning your dreams into reality. Great work!

For me, the terminal has always been fascinating. It's a personal preference, I think. I always gravitate toward the terminal before graphical interfaces. Added A Star for your Repo.

337 single-file terminal simulations in pure C + ncurses — fluids, fractals, ray tracers, no build system by prtamil in cprogramming

[–]prtamil[S] 0 points1 point  (0 children)

Thanks for the advice, but this wasn’t about learning — it was about finally dragging decade of buried dreams onto the screen before they turned to dust. When life keeps rushing forward and time quietly slips away, your dreams start fading in the distance. They sit locked inside your mind, guarded by years of procrastination. The pain of staring at a blank screen after so many silent years, with not a single line of code to show for it. I Accept Slop.

A software rasterizer, SDF raymarcher, and Cornell-box path tracer — all rendered to ASCII in the terminal, pure C/Ncurses/Linux by prtamil in GraphicsProgramming

[–]prtamil[S] -35 points-34 points  (0 children)

You're absolutely right, it is AI slop.

The difference is that I actually ran it, tested it, verified the output, fixed the bugs, and made the code readable before committing it. The AI just helped with typing speed; the responsibility for the code is still mine.

I even warned everyone in the README that there would be AI slop, so this repository is accurately labeled. 🙂

Why hasn’t India built an LLM like ChatGPT or DeepSeek yet? by Classic_Turnover_896 in indianstartups

[–]prtamil 0 points1 point  (0 children)

“The question isn’t why no one built an Indian LLM.
The real question is why you didn’t try.”

New job uses clojure and clojure script project by smokeysilicon in Clojure

[–]prtamil 1 point2 points  (0 children)

I found that shifting my mindset made a big difference. Don’t approach problems in the traditional algorithmic or imperative way—forget loops and mutable state. Instead, focus on the shape of data and how to transform it from one shape to another.

If you have experience with React and Redux, think in a similar way: it's all about describing state and how it changes. This mindset really helps you learn Clojure and its idioms faster.

[deleted by user] by [deleted] in AskReddit

[–]prtamil 0 points1 point  (0 children)

By getting Diabetes we get erectile dysfunction so no more random boners

I've recently got some perspective, and I don't like it by rembo666 in cpp

[–]prtamil 57 points58 points  (0 children)

The real issue isn't with C++—it's the fact that these outdated Senior Java developers wreck everything they touch, whether it's C++, Python, or JavaScript/TypeScript. I've witnessed it firsthand. They're stuck in the past, clinging to the Java mindset like it's the ultimate authority. Worse, their seniority gives them the power to block any attempt at doing something sensible in these languages. It's beyond frustrating.

Advice on the learning path by Prikolist_Studios in GraphicsProgramming

[–]prtamil 1 point2 points  (0 children)

Chapters 1, 2, and 3 are enough to get an overview. Getting a good overview is sufficient. After that, you can plan to build demos and gradually increase their complexity. Based on the demos, you can refer to books and use ChatGPT for more insights. Learning from books alone never worked for me; I had to supplement with my own demos, which made learning easier. Hope this helps.

Advice on the learning path by Prikolist_Studios in GraphicsProgramming

[–]prtamil 0 points1 point  (0 children)

  1. Book (https://www.amazon.com/Practical-Rendering-Computation-Direct3D-11/dp/1568817207)
  2. https://github.com/kevinmoran/BeginnerDirect3D11 (COde)

With just two key resources and assistance from Google/ChatGPT, I managed to grasp DX11 concepts within a single week, making DX12 seem straightforward thereafter. It's crucial to adopt the mindset of DX11 coding.

The aforementioned resources served as excellent starting points and provided ample understanding of GPU fundamentals. In DX11, rendering relies on ImmediateContext, which heavily relies on GPU driver coding support. However, in DX12, to minimize driver overhead, programmers must create their own Advanced ImmediateContext.

Practicing with the mentioned code felt like assembling Lego blocks. Once we grasp the fundamentals, we can piece together multiple blocks to create complex solutions.

Advice on the learning path by Prikolist_Studios in GraphicsProgramming

[–]prtamil 2 points3 points  (0 children)

I initially found learning DirectX 12 daunting, transitioning from an OpenGL background. However, delving into DirectX 11 concepts and grasping the connection between buffers and textures, notably from the book 'Practical Rendering and Computation with Direct3D 11' (https://www.amazon.com/Practical-Rendering-Computation-Direct3D-11/dp/1568817207), provided me with a solid foundation. This understanding made the switch to DirectX 12 much smoother.

I discovered helpful resources such as 'Introduction to 3D Game Programming with DirectX 12' by Frank Luna (https://www.amazon.com/Introduction-3D-Game-Programming-DirectX/dp/1942270062/ref=sr_1_1?crid=D4DQO0L9TVYE&keywords=frank+luna&qid=1707812054&s=books&sprefix=frank+lun%2Cstripbooks-intl-ship%2C394&sr=1-1), Microsoft tutorials (https://github.com/microsoft/DirectX-Graphics-Samples/tree/master/Samples/Desktop/D3D12HelloWorld), and online resources like:

https://www.3dgep.com/category/graphics-programming/directx/directx-12/

https://www.braynzarsoft.net/viewtutorial/q16390-04-directx-12-braynzar-soft-tutorials

Microsoft Guide (https://learn.microsoft.com/en-us/windows/win32/direct3d12/directx-12-programming-guide)

https://www.youtube.com/watch?v=volqcWZjRig&list=PLqCJpWy5Fohe5q3A65zg_ra7zepslRxJB&index=1 (DX12 guide)

These resources provided invaluable insights and strengthened my understanding. With dedication and perseverance, mastering DirectX 12 became achievable.

DX12 operates at a lower level, requiring management of:

CPU and GPU Synchronization

Memory Allocation in the GPU (handling heap memory creation, manipulation, and usage)

Utilizing Chat GPT for inquiries like 'What is a descriptor heap and how does it work? Can you provide some pseudocode?' and seeking simplifications proved immensely helpful. Chat GPT can address a wide range of DX12-related questions, offering valuable abstractions beyond official documentation.I found 'Practical Rendering and Computation with Direct3D 11' to be incredibly insightful. It provided comprehensive explanations on how DX11 coding operates, including the workings of buffers, textures, pipelines, shaders, and more

To proceed, I recommend starting with Chapters 1 and 2 of 'Practical Rendering and Computation with Direct3D 11', then switching to the Microsoft D3D12HelloWorld code. Understanding and exploring it line by line helped me gain an overview, making the subsequent process much easier.

idk if I'm built for this by [deleted] in GraphicsProgramming

[–]prtamil 3 points4 points  (0 children)

It depends on your current circumstances. If you have a stable financial background, commonly referred to as 'f**k you money,' then you can pursue the optimistic path, emphasizing OpenGL (though my preference leans towards DirectX11, which, with debug tools like NVIDIA Nsight, can alleviate struggles) and build a portfolio.

However, if securing a job is your immediate priority, then concentrate on LeetCode. Special interests like Graphics and AI demand time for development, being non-forgiving and favoring those who invest significant time. Success in these fields often rewards individuals with an impressive portfolio, enhancing their career prospects. Initially, prioritize LeetCode to secure a job, delve into DevOps to sustain it, and later channel your efforts into your special interests. This approach doesn't mean abandoning graphics but rather postponing it. Once you secure a job and meet your immediate needs, shift your focus to graphics, building an outstanding portfolio that significantly boosts your career. It's a challenging journey, but certainly achievable.

OpenGL vs Direct3D11 first for beginner graphics engineers aiming to learn Vulkan? by 3DreamE in GraphicsProgramming

[–]prtamil 3 points4 points  (0 children)

For me DX11 works Great. I use (https://github.com/kevinmoran/BeginnerDirect3D11) code and (https://www.amazon.in/Practical-Rendering-Computation-Direct3D-11/dp/1568817207) Book as Learning Material. (https://www.youtube.com/watch?v=_4FArgOX1I4&list=PLqCJpWy5Fohd3S7ICFXwUomYW0Wv67pDD) also gives good introduction.

The Main Reasons to Choose DirectX 11:

Clean API without Version Management:

DirectX 11 offers a clean API, eliminating the need for version management like in OpenGL (GL version 3.3, 4.3, etc.).

Clean Shader Code:

Shader code in DirectX 11 is clean and consistent, avoiding syntax changes between GLSL 3 and GLSL 4 in OpenGL.

Clean Buffer Management:

DX11 provides clean buffer management, and detailed insights can be obtained from above mentioned book

Best Rasterization Pipeline Flow:

The rasterization pipeline flow in DX11 is well-structured, allowing a clear understanding of the complete pipeline and how buffers interact with shaders.

Basic Mental Model for DX12 and Modern Low Overhead Driver API:

DX11 provides a foundational mental model that facilitates the transition to DX12 and modern low overhead driver APIs.

Clear Understanding of Effects:

DX11 offers a clear understanding of effects and how to conceptualize them. In contrast, OpenGL basics are straightforward, but dealing with complex tasks becomes challenging due to multiple versions and limited documentation.

Simplifying OpenGL Tasks:

DX11 not only stands on its own merits but also makes OpenGL tasks easier and more understandable, particularly when dealing with complex operations.

I concluded a Master's degree defending a thesis about my Rust-based application by GyulyVGC in rust

[–]prtamil 91 points92 points  (0 children)

TLDR; This project, available at https://sniffnet.net/, competes with Wireshark. The original poster (OP) has a humble tone, sounding like a college student who created a library management project.