Comments (8)
I had a pull request on a non-OpenGL SDL2 backend on the old repo. I've been meaning to resubmit it after the string API change and after getting my other one in. It's just a conversion of the old SDL1.2 backend that was removed. It requires SDL2-gfx as well and uses that library's built in 8x8 pixel ASCII only font. Long term I'd want to remove that limitation.
"Software rendering" is kind of ambiguous these days. Most people use it to mean 3D rendering done on the CPU like that project. However we're also referring to an SDL2 "software renderer" when even using plain SDL2 (whether the end result is 2D or 3D) the default renderers are "accelerated" which unless I'm very much mistaken usually means using the GPU; just not its 3D capabilities.
Nuklear doesn't actually use/take advantage of any 3D features right? Otherwise it wouldn't look the same on the non-3D API backends. So while that project is an impressive achievement, I don't really see the benefit to Nuklear. I can't actually think of a use-case for a different 3D backend. Putting aside the fact that pretty much anything you can possibly run 3D graphics on has some kind of GPU with OpenGL support on it already, you could always just use the software renderer(s) in Mesa3D with the OpenGL backends if you wanted/had to.
from nuklear.
SDL2 software renderer probably makes more sense as more people are using it, and it works everywhere, but this one is impressive as a software renderer
from nuklear.
Hm, my idea was quite different - someone wants to (for whatever reason) use the linked 3D renderer might also want some UI. If Nuklear had an existing backend, it'd make things a bit easier to start with 😉. That's why I also asked if anybody is using that 3D renderer and whether it would make sense.
from nuklear.
Hmm. Couldn't they already use the x11 backend with that project since it also uses x11 for Linux? And maybe that would work for GDI and windows too (I don't know windows API's but I associate GDI with win32/HWND type code which I see in their windows platform; maybe they're not exactly the same).
Wouldn't it be about as complicated as using OpenGL based Nuklear in an app that was also doing OpenGL 3D rendering? Other than worrying about not preserving/restoring conflicting state between UI and your graphics code, it works.
from nuklear.
@rswinkle That makes sense to me, or you could use OpenGL to render the CPU drawn frames and UI overlayed on top. I do see the advantage of doing an SDL2 software renderer though, GDI and x11 obviously aren't portable and that's an issue for those who want to keep their project 100% using CPU.
from nuklear.
I actually at some point even wanted it myself, but I got discouraged, I wanted to write a software ray tracer, and have a UI for it, and I was gonna write a Nuklear renderer in SDL2, but never really got the time or drive to do it.
from nuklear.
Thanks for the comments. I'll leave this open for some time yet to allow some more discussion (and new contributors), but currently it seems to me as we shouldn't push this idea much.
from nuklear.
Feel free to experiment with creating a backend for Renderer. Looks like a really cool platform!
from nuklear.
Related Issues (20)
- How do you set "default text" in a text field?
- colorpicker - can't change hue before changing val/sat first HOT 1
- center window title at the middle HOT 2
- Cannot avoid STB_RECT_PACK_IMPLEMENTATION / STB_TRUETYPE_IMPLEMENTATION HOT 1
- Knob widgets HOT 1
- glfw Opengl4 demo Segmentation fault HOT 6
- Possible fix/improvement for d3d12 demo
- Resizing main nuklear window's height depending on inner content size HOT 1
- Is there some kind of multicombobox? HOT 9
- GDI+ (gdip), Text Input Copy/Paste/Ctrl+A not working HOT 5
- Create a SDL backend File_Browser HOT 1
- Way to "Grey out"/disable a widget? HOT 2
- Incorrect returned value in nk_group_scrolled_offset_begin
- Errors Reported By Facebook Infer
- Using SDL_GetWindowBordersSize() messes up everything. HOT 3
- Line chart performance: boxes on points make line charts much slower than without HOT 1
- Is it possible to know whether input is captured?
- Creating a nk_image with the sdl_renderer backend HOT 2
- Errors in compiling https://immediate-mode-ui.github.io/Nuklear/doc/#nuklear/example
- Two Issues with Fonts
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nuklear.