Why not? They've proven themselves countless times in many advanced rendering systems, so why not use it? Just because they use the term 'general purpose GPU' doesn't mean these shaders can be applied to graphics.hendu wrote:On compute shaders, I don't think they belong in a 3d engine.
Finally, a DirectX 10 video driver for Irrlicht
-
- Posts: 1215
- Joined: Tue Jan 09, 2007 7:03 pm
- Location: Leuven, Belgium
Re: Finally, a DirectX 10 video driver for Irrlicht
-
- Admin
- Posts: 14143
- Joined: Wed Apr 19, 2006 9:20 pm
- Location: Oldenburg(Oldb), Germany
- Contact:
Re: Finally, a DirectX 10 video driver for Irrlicht
No, we applied for several times, but now I don't have any fun nor time for it anymore.hendu wrote:Oh hey, will irr take part in the coming gsoc?
Re: Finally, a DirectX 10 video driver for Irrlicht
@hybrid
Sad, it would've been a great way to spend the summer.
@Radikalizm
By that reasoning anything could be applied to graphics? Heck a lava lamp could be hooked via a webcam to act as a random number source (been done, but not something that should be in irrlicht either IMO).
OpenCL being able to run on gpus isn't a reason to wrap it, since it also runs on cpus and specialized hw such as Creative's or Tilera's. The benefits for irrlicht would be minimal, as you still need a lot of setting up. I'm not familiar with the dx11 equivalent, but I assume it has a cpu path as well.
Also added dependencies, be it W7 or the opencl libs.
Sad, it would've been a great way to spend the summer.
@Radikalizm
By that reasoning anything could be applied to graphics? Heck a lava lamp could be hooked via a webcam to act as a random number source (been done, but not something that should be in irrlicht either IMO).
OpenCL being able to run on gpus isn't a reason to wrap it, since it also runs on cpus and specialized hw such as Creative's or Tilera's. The benefits for irrlicht would be minimal, as you still need a lot of setting up. I'm not familiar with the dx11 equivalent, but I assume it has a cpu path as well.
Also added dependencies, be it W7 or the opencl libs.
-
- Posts: 1215
- Joined: Tue Jan 09, 2007 7:03 pm
- Location: Leuven, Belgium
Re: Finally, a DirectX 10 video driver for Irrlicht
If you're already using the D3D11 libraries for rendering you wouldn't need any additional dependencies to include compute shaders, they'd already be right there ready for use. What I'm getting at is that if you have this massive parallel processing power of a GPU at your disposal (that is, if your application isn't already flooding the GPU) to speed up calculations that you'd normally do on the CPU, then why not use it? Everything you need to do this is right there at your disposal. It's completely different from 'hooking up a webcam to record a lava lamp for random number generation' since that technique would, in most cases, not be beneficial at all to your situation, while compute shaders probably would behendu wrote:@hybrid
Sad, it would've been a great way to spend the summer.
@Radikalizm
By that reasoning anything could be applied to graphics? Heck a lava lamp could be hooked via a webcam to act as a random number source (been done, but not something that should be in irrlicht either IMO).
OpenCL being able to run on gpus isn't a reason to wrap it, since it also runs on cpus and specialized hw such as Creative's or Tilera's. The benefits for irrlicht would be minimal, as you still need a lot of setting up. I'm not familiar with the dx11 equivalent, but I assume it has a cpu path as well.
Also added dependencies, be it W7 or the opencl libs.
Even if you only were to make compute shaders available to people using the engine rather than actually using it in the engine internally it would still offer some great benefits since it opens up a huge amount of possibilities for next-generation rendering techniques. Again, if it's right there at your disposal, then why actively choose not to use it?
Re: Finally, a DirectX 10 video driver for Irrlicht
it would simply be dumb not to make them availible
i mean if we include dx11 but don't make them availible any one who would like to use them for AI or even texture work (without using a god damn screen quad), procedural generation physic or W/e in a game or a rendering engine that could use them
there are many feature where a simple pass through to the driver would be usefull
i mean if we include dx11 but don't make them availible any one who would like to use them for AI or even texture work (without using a god damn screen quad), procedural generation physic or W/e in a game or a rendering engine that could use them
there are many feature where a simple pass through to the driver would be usefull
Re: Finally, a DirectX 10 video driver for Irrlicht
I'm not saying they're not useful; I'm saying they are general computation, which I see as out of scope for irrlicht's target of 3d rendering.
Re: Finally, a DirectX 10 video driver for Irrlicht
I agree. You would also have to provide code for the setup.
There is no DX1X driver, after two posters said they were working on one. It seems to me, at this stage, a minimal driver is required *now*, then there can be a debate about extending it. Irrlicht is changing at a glacial pace but everyone wants everything in it. I just cannot understand this.
There is no DX1X driver, after two posters said they were working on one. It seems to me, at this stage, a minimal driver is required *now*, then there can be a debate about extending it. Irrlicht is changing at a glacial pace but everyone wants everything in it. I just cannot understand this.
Re: Finally, a DirectX 10 video driver for Irrlicht
We need to rework maybe the way people see Irrlicht, not keep support for the absolutely ancient hardware for example, Sure WinXP is necessary, but there needs to be a minimalist style old-hardware compatible reduced version of a larger more capable Irrlicht. So why doesn't one of the admins maybe create a sticky post to better explain some more detail.
A good Idea would be to get more outside support for irrlicht, for instance advertising Irrlichts capabilities, through a community Game Tech Demo, I would have a large variety of artwork(meshes, textures, sound effects) and story lines available we could use. PcOde's Blender to Irrlicht script(Its one of the best I've seen, its basically a level editor and all in Blender for Irrlicht) is also a great thing we should maintain and directly include with irrlicht, a strong Artist to engine content pipeline is quite important for potentially ineterested people/parties.
Any more ideas from you guys out there? Should we maybe move this discussion to a new Thread?
A good Idea would be to get more outside support for irrlicht, for instance advertising Irrlichts capabilities, through a community Game Tech Demo, I would have a large variety of artwork(meshes, textures, sound effects) and story lines available we could use. PcOde's Blender to Irrlicht script(Its one of the best I've seen, its basically a level editor and all in Blender for Irrlicht) is also a great thing we should maintain and directly include with irrlicht, a strong Artist to engine content pipeline is quite important for potentially ineterested people/parties.
Any more ideas from you guys out there? Should we maybe move this discussion to a new Thread?
Re: Finally, a DirectX 10 video driver for Irrlicht
Agree, but the main reason I think is that no developer wants to (or afraid to ) make a big API change ( which is necesarray ? for DX10+, Flexible vertex format )ACE247 wrote:We need to rework maybe the way people see Irrlicht, not keep support for the absolutely ancient hardware for example, Sure WinXP is necessary, but there needs to be a minimalist style old-hardware compatible reduced version of a larger more capable Irrlicht. So why doesn't one of the admins maybe create a sticky post to better explain some more detail.
But if you want to go with current time, will have to make some.
-
- Posts: 1010
- Joined: Mon Oct 24, 2011 10:03 pm
- Location: 0x45 61 72 74 68 2c 20 69 6e 20 74 68 65 20 73 6f 6c 20 73 79 73 74 65 6d
Re: Finally, a DirectX 10 video driver for Irrlicht
I don't see the point why not to keep support for ancient hardware....
yet again. I am the way I am (I like having dx 8 support! even though no sane person would use it.)
yet again. I am the way I am (I like having dx 8 support! even though no sane person would use it.)
"this is not the bottleneck you are looking for"
Re: Finally, a DirectX 10 video driver for Irrlicht
They way I know you, you just want features for the sake of having features and being able to brag about them....
-
- Posts: 1215
- Joined: Tue Jan 09, 2007 7:03 pm
- Location: Leuven, Belgium
Re: Finally, a DirectX 10 video driver for Irrlicht
Because if you want to support old hardware you have to make sure that the API will always stay compatible with said hardware. When you throw in support for newer hardware you will have to make sure that your API supports both without too many workarounds or exceptions, and this becomes exceedingly difficult especially when we're talking about the major differences between DX9 (and predecessors) and DX10/11aaammmsterdddam wrote:I don't see the point why not to keep support for ancient hardware....
yet again. I am the way I am (I like having dx 8 support! even though no sane person would use it.)
-
- Admin
- Posts: 14143
- Joined: Wed Apr 19, 2006 9:20 pm
- Location: Oldenburg(Oldb), Germany
- Contact:
Re: Finally, a DirectX 10 video driver for Irrlicht
No, that's not true. What we basically do is to define a high-level API (IVideoDriver) and the actual "low-level" drivers in the actual driver implementations. I don't see any reason why this is not possible for dx9 and dx1x at the same time. There may arise features which are not possible for one or the other, but that happened to dx9/opengl also. Eihter we can work around such things with alternative implementations, or there are some things missing for some drivers. But there's no general limitation that a low-level API can under no circumstances implement the high-level interface.
Re: Finally, a DirectX 10 video driver for Irrlicht
Agreed, lets try to get a minimal DX10 or 11 driver into irrlicht first and worry about implementing all the other low-level features later.mongoose7 wrote:There is no DX1X driver, after two posters said they were working on one. It seems to me, at this stage, a minimal driver is required *now*, then there can be a debate about extending it.
So with that in mind, what would should a minimal driver be capable of?
IMO
- Setting up a render window
- view transforms
- rendering triangle primitives (ideally buffers too but not so important) via shaders
- textures
- basic material properties
That should be enough to get the ball rolling, I think
-
- Posts: 1215
- Joined: Tue Jan 09, 2007 7:03 pm
- Location: Leuven, Belgium
Re: Finally, a DirectX 10 video driver for Irrlicht
Maybe I didn't explain what I meant exactly all too well, I know that it's perfectly possible to have a DX9 and DX10/11 driver at the same time, having built this from scratch myself in my engine (although I dropped support for DX9 some time ago). I'm completely aware of irrlicht's interface <-> implementation modelhybrid wrote:No, that's not true. What we basically do is to define a high-level API (IVideoDriver) and the actual "low-level" drivers in the actual driver implementations. I don't see any reason why this is not possible for dx9 and dx1x at the same time. There may arise features which are not possible for one or the other, but that happened to dx9/opengl also. Eihter we can work around such things with alternative implementations, or there are some things missing for some drivers. But there's no general limitation that a low-level API can under no circumstances implement the high-level interface.
Maybe I should've mentioned actual implementations instead of interfaces, it's true that you can just not implement a feature provided by an interface if the underlying implementation does not support it, but the more features are added in an implementation (and D3D10/11 provides a decent amount of new features in comparison to D3D9) the more functionality you'll have to provide in your interface, which in turn will create more and more unimplemented functionality for older back-ends. This can be brought down to a minimum with a good design, but it will never be eliminated completely.
There's also a matter of varying performance based on how your functionality is implemented, emulation of older/newer functionality, executing code on the CPU/GPU , how much 'low level' control you want to give the developer, etc. These things are certainly not impossible to overcome, but the overall complexity and potential overhead grows, not to mention the user of the engine having to keep in mind which implementation provides which functionality and at which quality.