Skip to content
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

Adding directx/opengl es to cell #10

Open
Ias0601 opened this issue Dec 8, 2017 · 10 comments
Open

Adding directx/opengl es to cell #10

Ias0601 opened this issue Dec 8, 2017 · 10 comments

Comments

@Ias0601
Copy link

Ias0601 commented Dec 8, 2017

Hey joey.

Opengl is great but what do you think about having directx/opengl es too? I might be able to implement directx versions of the classes in your project and all you have to do is ask in the constructor of cell for which backend to choose.
Vulkan is new so most of the android devices don't support it. So isn't it a good idea to make your engine( with opengl es) also run on android?

@v7medz
Copy link

v7medz commented Dec 8, 2017

OpenGLES is quite easy to implement while DirectX 10 /Vulkan can be quite difficult, tbh vulkan Is designed to in the same way as DX12, anyway this is a graphics engine and technique used here can be implemented in any rendering API if you understand the idea behind it.

@JoeyDeVries
Copy link
Owner

I'm fine with a DirectX 10/11 backend (and/or OpenGL ES) as long as readability remains a focus and things don't become too bloated with tons of specific corner cases.

I'm not a fan of a DX12/Vulkan backend combined with the OpenGL renderer as these render APIs are fundamentally too different and any attempt to 'combine' them won't be pretty.

@Ias0601
Copy link
Author

Ias0601 commented Dec 8, 2017

Yeah readability will stay the same as I'm only suggesting to create directx versions of base rendering classes and all other classes will be same for both backends like @ZLIXINE said. My current directx rendering engine has some similarities to cell in structure.(Like it has separate classes for render targets, shapes, mesh, lighting)
iaenginerendererv1 0

So if you like I will be working on making directx 11 versions of cell in my free time and will open a pull request when I'm done. (but it will take some time as I have my exams coming near and will only work on this in my free time)

Wish you all the best.

@v7medz
Copy link

v7medz commented Dec 8, 2017

be sure to check Unity "HLSLcc" to cross compile HLSL to GLSL quickly, try not to waste your time writing all shaders in both languages.

@JoeyDeVries
Copy link
Owner

Sounds great, and no worries; take all the time you need :) Best of luck!

@zacharycarter
Copy link

Why not just use an API like - https://github.com/bkaradzic/bgfx

@v7medz
Copy link

v7medz commented Dec 8, 2017

@zacharycarter the same answer to why not use an Engine as unity or Unreal?

@zacharycarter
Copy link

@ZLIXINE I think you're confused...

BGFX simply abstracts away the differences between various graphics APIs. It's not a game engine - it's a graphics API abstraction library.

@Ias0601
Copy link
Author

Ias0601 commented Dec 9, 2017

@JoeyDeVries Thank you. :)

@ZLIXINE Thank you I will take a look at that.

@zacharycarter You will never get the fun of programming it from scratch when you use the library. I do programming as my hobby so I need to get the full fun with it.

@Ias0601
Copy link
Author

Ias0601 commented Dec 9, 2017

@zacharycarter if you have ever read the readme of this project you would never suggest something like that. "open-source OpenGL graphics engine aimed to serve as an educational repository for learning how a larger graphics engine can be structured and organized"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants