-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New Release/Further development #23
Comments
Interesting you should mention this now, I've been doing a little work on it over the past week. There's just one non-trivial feature I'd like to add before it's ready to go: a line rasteriser. I'm happy to take contributions for it. Otherwise, I'll probably try to get round to it some time in the next week or two. |
-:( Unfortunately I'm not really familiar with graphics programming (just getting started :)), but i guess an implementation for line rasterizer based on the algorithm described in this presentation will suffice: Line Rasterization you said is not trivial, may I ask what challenges are you facing with the implementation? |
Oh, no challenges. I've just yet the find the time to do it. A simple implementation of Bresenham's algorithm will do just fine. |
Oke, I will Try to implement the Bresenham's algorithm for this package and submit a pull request this weekend 😃 hopefully i get somewhere. |
Thanks! You could probably duplicate most of |
I took your advice and copy most of the triangle.rs, but i do feel like i have bitten more than i can chew 🥲, you suggested to walk the screen space vertices, correct me if I'm wrong , but there are a maximum of 2 screen- space vertices(Points) ? Then while applying Bresenham's algorithm for the 2 points i need to emit fragments ? |
Yep. I'm happy to take it over if desired :) |
Was i close ? 😬 the initial part is just from triangle.rs, i added this loop for the vertices. `;
|
I think that's getting there, yes. Just need to deal with interpolating vertex data using barycentric (i.e: |
I had a look at the refactor branch and it looks really nice. Hope it gets out in the near future. I will probably use it to render low poly 3D scenes for my retro RPG Creator / Engine https://github.com/markusmoenig/Eldiron. Software rendering makes it ultra-portable and for RPGs of the late 90s the current CPUs are more than fast enough, even on an iPhone, especially with multi-threading. Only thing I have to figure out is object based animations ... . |
Wow, sounds like a really fun project! I've used Now that GATs are stable, I really have no excuse for not pushing the I believe the only thing that's missing is a decent line rasteriser: if you happen to have a lot of experience here, I'd appreciate your input! The one in the master branch isn't great and it would be nice to have an upgrade on that. |
Thanks. No sorry, I am not a rasterizing expert ... . btw; have you any experience with character animations and |
I imagine would be much the same as on the GPU, albeit with a little less hassle (no need to load animation state into GPU buffers). There's definitely no reason as to why it would be any harder with |
Talking about rasterization, the SoftGLRender C++ lib is under the MIT and seems to have quite a good line rasterizer at |
Is there a timeline for the merge of the rewrite branch ?
Latest release was 1 year ago.
The text was updated successfully, but these errors were encountered: