raspberry-pi-os
tinyrenderer
raspberry-pi-os | tinyrenderer | |
---|---|---|
9 | 64 | |
13,519 | 22,450 | |
0.0% | 0.6% | |
0.0 | 2.5 | |
over 1 year ago | 5 days ago | |
C | C++ | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
raspberry-pi-os
-
I want to learn about kernel development
Last but not the least, learning by doing is fun so you can check out - raspberry-pi-os (writing an os from scratch) - https://github.com/s-matyukevich/raspberry-pi-os
- GitHub - s-matyukevich/raspberry-pi-os: Learning operating system development using Linux kernel and Raspberry Pi
- Learning operating system development using Linux kernel and Raspberry Pi
- Learning operating system development using Linux kernel and Raspberry Pi (2018)
-
Show HN: CheesecakeOS for Raspberry Pi Volume 0: Booting, Processes, and VM
CheesecakeOS for Raspberry Pi Volume 0: Booting, Processes, and Virtual Memory is the first in what I hope is a series of github markdown tutorials or volumes on bare-metal from-scratch operating system development.
I have dreamed of contributing to the Linux Kernel, but have yet to find the courage to jump in and do so. I started by attempting to read Understanding the Linux Kernel by Daniel Bovet and Marco Cesati, but found it was too advanced for me at the time. I found another text I credit with advancing my understanding, Computer Systems: A Programmer's Perspective by Randall Bryant and David O'Hallaron. I worked on the self-study labs from their book website, and found them to be a superb educational tool.
Further, then becoming interested in what creating an operating system actually means, I stumbled upon Sergey Matyukevich's Rasberry-Pi-OS github repo (https://github.com/s-matyukevich/raspberry-pi-os). I wanted to expand on his tutorial, for my own education, and, in the best case, for the benefit of others.
There are many ideas taken from Linux in the implementation, as when I didn't know how to proceed, that is the source I would consult. Though, I attempt to simplify and explain the details in the text. The implementation stops short of implementing or supporting a file system, the subject of the next volume.
-
Has anyone ever actually gotten a custom kernel/bare metal program to run specifically on the Raspberry Pi 4B?
Not familiar with this myself but aiming to start soon. Have found a nice youtube series for low level development on the RPi, not sure which version he uses, but reportedly it works for some on RPi 4. He also has a subreddit:
-
wanting to create a simple OS for simple games
Here's one tutorial: https://github.com/s-matyukevich/raspberry-pi-os
-
In-depth software programming
C: Learning operating system development using Linux kernel and Raspberry Pi
- What's an interesting non-x86 based architecture to write an OS for?
tinyrenderer
- Playing with Code
- Tiny renderer or how OpenGL works: software rendering in 500 lines of code
-
TinyCompiler: A Compiler in a Week-End
That sounds interesting! He seems to have four tiny renderers pinned on his GitHub page; is https://github.com/ssloy/tinyrenderer the one you're recommending? What do you like about it?
-
How to Become a Software Engineer ?
C++: How OpenGL works: software rendering in 500 lines of code
-
From scratch OpenGL and shaders with raw Xlib
I don’t think that exists (I sure would like for it to), but until it does you could amuse yourself with:
- A 500-line (non-OpenGL-compatible) 3D rasterizer: https://github.com/ssloy/tinyrenderer/wiki.
- A “hello Wayland” app written in C without libwayland or anything else: https://gaultier.github.io/blog/wayland_from_scratch.html.
- A “hello X11” app written in x86-64 assembly(!) without libX11, libxcb, or anything else: https://gaultier.github.io/blog/x11_x64.html.
-
Tiny Compiler – Writing a Compiler in a Weekend
the tinyrenderer[1] project has been on my todos forever now. glad to see the author is writing more self-paced programming projects.
[1]: https://github.com/ssloy/tinyrenderer
-
Is there space in this field for extreme cases like mine ?
- Game development - Unity3D project based learning in C#: https://learn.unity.com/ - Graphics - There was another user on r/GraphicsProgramming the other day (who teaches Computer Graphics at his university) that linked their lecture series for the entry year of their course here: https://tamats.com/learn/realtime-graphics/ - Project based learning: https://github.com/ssloy/tinyrenderer/wiki - Rendering API tutorials: https://vulkan-tutorial.com/, https://learnopengl.com/
-
How do I become a graphics programmer? – A guide from AMD Game Engineering team
There are a couple of excellent resources out there for implementing 3D rendering from scratch.
On that I cannot recommend enough is this github repo:
https://github.com/ssloy/tinyrenderer/wiki/Lesson-0:-getting...
If you are more of a visual learner, this guy is also a treasure trove:
https://www.youtube.com/watch?v=ih20l3pJoeU
-
Ask HN: What books or courses do you know similar to "From Nand to Tetris"?
Other people have mentioned ray-tracing in one weekend
If anyone is really interested in graphics I would also recommend TinyRenderer
https://github.com/ssloy/tinyrenderer/wiki
This one is a CPU-based rasterizing renderer
Its good if you want to get a good understanding of what a GPU does underneath
-
Trying to learn wgpu
I was in a similar position to you, and I first did this https://github.com/ssloy/tinyrenderer/wiki
What are some alternatives?
dattobd - kernel module for taking block-level snapshots and incremental backups of Linux block devices
sokol - minimal cross-platform standalone C headers
JingOS - Awesome - JingOS - The World’s First Linux-based OS design for Tablets
tiny-renderer - A tiny sotfware 3D renderer in 100 lines of Python
circle - A C++ bare metal environment for Raspberry Pi with USB (32 and 64 bit)
3d-game-shaders-for-beginners - 🎮 A step-by-step guide to implementing SSAO, depth of field, lighting, normal mapping, and more for your 3D game.