raytracing
ROS
raytracing | ROS | |
---|---|---|
8 | 83 | |
- | 2,635 | |
- | 1.3% | |
- | 2.6 | |
- | 3 months ago | |
Python | ||
- | BSD 3-clause "New" or "Revised" License |
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.
raytracing
- Ray Tracing in One Weekend Book Series
-
What are the best textbooks/resources for learning graphics programming practically in 2023?
I’m getting started too in graphics programming (web developer here) and I’ve started with the Raytracing in One Week-end, I find it to be great (I use ChatGPT along the tutorial to exchange and ask questions when I struggle). Other than that I also bought the OpenGL bible book and the book Computer Graphics from Scratch that you can both find on Amazon, they’re really great.
-
C++ Project Ideas?
Nope, because they are easy to find. Here they are on GitHub: RayTracing/raytracing.github.io: Main Web Site (Online Books)
- Ray Tracing in One Weekend
-
Changelog best practices
At https://github.com/RayTracing/raytracing.github.io, we have a master branch that serves as our primary release branch, and then three coordinated development branches: dev-patch, dev-minor, and dev-major (according to the SemVer https://www.semver.org/ change level). You could develop on all three level simultaneously, merging according to your next planned release (whether it's a patch, minor, or major release). In practice, we tend to figure out what the next release level will be, and then just develop on that branch. For example, we're working on a major release right now (v4.0.0), so all development work is going into our dev-major branch. Accordingly, we try to keep the CHANGLOG up to date as we go (see https://github.com/RayTracing/raytracing.github.io/blob/dev-major/CHANGELOG.md).
-
help, where did i go wrong in raytracing in one weekend?
I have now had a brief look at the repository for the book and see that there is work on a version 4 that may address some of the issues. Since you appear to be contributing I believe this issue covers the incorrect images for those sections.
-
How I Wrote My Book
Very cool. I co-edit Peter Shirley's _Ray Tracing in One Weekend_ (https://raytracing.github.io/) and have taken a similar approach, though with a different toolset. At some point if I find the time, I'll write up a similar article on our approach and what we've learned. Our books are open-sourced on GitHub (https://github.com/raytracing/raytracing.github.io), and we also use GitHub to host our books.
Basically, we use Markdeep (https://casual-effects.com/markdeep/), a _very_ powerful Markdown implementation with a bunch of built-in features. The killer feature is that with a handful of boilerplate lines (UTF-8 declaration at the top, and JavaScript loader at the bottom), you get content that automatically self-transforms in the browser into a full HTML document. This eliminates any build step, and means you can treat it as you would any other HTML file, with optional CSS and other features. It also bundles in a LaTeX engine, ASCII diagram rendering, and a whole host of other features. If you look at the three ray tracing books, you can see how simple the source is, and how pleasing the final rendering.
Check out the books and the GitHub repo — it's a _great_ way to quickly and easily pound out a web book.
-
Raytracing In One Weekand (and in Rust)
If you want, you can add it to the list! https://github.com/RayTracing/raytracing.github.io/wiki/Implementations
ROS
- Google DeepMind's Aloha Unleashed is pushing the boundaries of robot dexterity
-
Linux market share passes 4% for first time; macOS dominance declines
I wonder if this could be related to M1/2/3 Macs being worse for x86 system software development than the old Intel Macs. I work on ROS[1] which runs on x86 Linux platforms, but usually develop on a Mac. I may have to move to a Linux laptop soon because there's not an easy path (that I'm aware of) to running x86 ROS code on an M3: compiling the entire system for arm would be a huge headache while running x86 code in a Linux VM under Rosetta has a lot of unknowns.
Obviously my case is a bit of an outlier, but once you add up enough outliers you might see a real impact.
[1] https://www.ros.org
-
Getting into Robotics as a Software Engineer
Robotics is a broad field and is a confluence of many specialties: mechanical engineering, hardware engineering, software engineering, control, machine learning, computer vision, anything in between is a good entrance.
Coming from software, if you are interested, I would suggest either:
- Backend platform development (Python, C++ as main programming languages with a strong focus on ROS[1]).
- Frontend development (nothing too different from what's out there).
As small projects I would suggest playing with ROS to learn it and getting a running simulation with a simple robot that you can teleoperate, most of the stack already exists, it's just connecting everything together [2].
Another venue is open source contribution [1] to get known within the community and potentially attract interest from companies. ROS has multiple packages, from cloud infrastructure to drivers and simulation, if you see anything there you could contribute to, they will gladly take contributions.
In general robotics greatly benefits of good technologies from other areas, if there is a tool we use you believe could be better or a lack of good tooling in a specific area, it will get noticed.
So this would be my suggested path: learn C++/Python if you're not familiar with, learn ROS and watch which specialties appear more often in robot related jos posts [3]. If you are really invested, maybe go to a robotics conference as ROSCon to meet other enthusiasts, which companies are engaged with the community, etc.
Good luck!
Note: not everything robot related is done in ROS, but it's almost a standard within the field save for a few exceptions.
[1]: https://www.ros.org/
-
How do I start robotics as a teen with no money?
ROS is an operating system designed for robotics (it can be run many different ways) it includes simulations for many robots (including sensors etc) and you can even design your own fully inside the software. https://www.ros.org/
-
C++ Project Ideas?
Robotics with ROS https://www.ros.org/ (You can do a lot with simulators and don't require actual HW)
-
[Career Advice] Transition from Software Engineer to Robotics
Hardware experience is useful, but not needed to get started working with robotics. With your software background, I recommend you look into learning ROS (Robot Operating System) fundamentals on a personal computer, you can simulate a robot using Gazebo. Good luck!
-
Best practices in creating a Rust API for a C++ library? Seeking advice from those who've done it before.
In Robotics, the Open Motion Planning Library (OMPL) is a popular library for multi-dimensional motion planning, and is used by ROS and other robotics-related software. There are no Rust bindings to OMPL (though there is Rust support for software like ROS), and the library is written almost exclusively in C++. There are Python bindings, but those are generated using Py++. The header files throughout OMPL are C++ header files, not C, as they contain namespaces, classes, etc.
-
[ANN] NASA's Ogma 1.0.9
[3] https://www.ros.org/
-
Newbie to Robotics (Question/Discussion)
ALSO - learn ROS. If you are interested in robotics as a career, this is one of the better things to have good experience for on your resume. There are also good tutorials on using ROS with simulated robots, so if you just want to focus on the software that's a good option :)
-
Real-time C++ on Linux
Roboticist here, have you heard of ROS?
What are some alternatives?
LearnOpenGL - Code repository of all OpenGL chapters from the book and its accompanying website https://learnopengl.com
MRPT - :zap: The Mobile Robot Programming Toolkit (MRPT)
computer-graphics-from-scratch - Text, diagrams, and source code for the book Computer Graphics from scratch.
Robotics Library (RL) - The Robotics Library (RL) is a self-contained C++ library for rigid body kinematics and dynamics, motion planning, and control.
tinyraytracer - A brief computer graphics / rendering course
yarp - YARP - Yet Another Robot Platform
vale - :pencil: A markup-aware linter for prose built with speed and extensibility in mind.
DART - DART: Dynamic Animation and Robotics Toolkit
rust_rayweek - implementation of ray tracing in one weekend in rust.
PCL - Point Cloud Library (PCL)
build - Source code and build system used to generate the book Hands-on Scala Programming
moveit - :robot: The MoveIt motion planning framework