Poster | Thread |
AmigaBlitter
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 10-Aug-2015 19:26:04
| | [ #1 ] |
|
|
|
Elite Member |
Joined: 26-Sep-2005 Posts: 3514
From: Unknown | | |
|
| Great work, Hans.
Really interesting.
I would like to learn graphics driver development.
_________________ retired
|
|
Status: Offline |
|
|
broadblues
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 10-Aug-2015 21:33:22
| | [ #2 ] |
|
|
|
Amiga Developer Team |
Joined: 20-Jul-2004 Posts: 4447
From: Portsmouth England | | |
|
| |
Status: Offline |
|
|
Rob
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 10-Aug-2015 22:14:44
| | [ #3 ] |
|
|
|
Elite Member |
Joined: 20-Mar-2003 Posts: 6385
From: S.Wales | | |
|
| It's nice to see the different stages of the development chronicled. |
|
Status: Offline |
|
|
samo79
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 11-Aug-2015 0:35:06
| | [ #4 ] |
|
|
|
Elite Member |
Joined: 13-Feb-2003 Posts: 3505
From: Italy, Perugia | | |
|
| Nice _________________ BACK FOR THE FUTURE
http://www.betatesting.it/backforthefuture
Sam440ep Flex 800 Mhz 1 GB Ram + AmigaOS 4.1 Update 6 AmigaOne XE G3 800 Mhz - 640 MB Ram - Radeon 9200 SE + AmigaOS 4.1 Update 6
|
|
Status: Offline |
|
|
noXLar
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 11-Aug-2015 5:12:46
| | [ #5 ] |
|
|
|
Cult Member |
Joined: 8-May-2003 Posts: 736
From: Norway | | |
|
| cool :) _________________ nox's in the house!
|
|
Status: Offline |
|
|
kyle
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 11-Aug-2015 6:11:23
| | [ #6 ] |
|
|
|
Cult Member |
Joined: 15-Oct-2006 Posts: 866
From: Livorno, Italy | | |
|
| Great work Hans!
Thanks for all you effort |
|
Status: Offline |
|
|
Xmas87
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 11-Aug-2015 6:41:31
| | [ #7 ] |
|
|
|
Regular Member |
Joined: 17-Sep-2013 Posts: 248
From: Unknown | | |
|
| Some excellent progress. Good work.
The graphics cards that are in use are real beasts of cards and can crunch through data much faster than AmigaOSand the drivers currently allow.
How much room for improvement do you foresee? Is the aged Warp3D an insurmountable bottleneck? |
|
Status: Offline |
|
|
pavlor
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 11-Aug-2015 15:02:13
| | [ #8 ] |
|
|
|
Elite Member |
Joined: 10-Jul-2005 Posts: 9636
From: Unknown | | |
|
| |
Status: Offline |
|
|
kamelito
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 11-Aug-2015 19:02:18
| | [ #9 ] |
|
|
|
Cult Member |
Joined: 26-Jul-2004 Posts: 832
From: Unknown | | |
|
| @Hans, Interesting thanks. To my knowledge Amiga devices drives development is not well documented, what information is needed to development such software? is there any relevant information out there or do you need internal information taken from the OS to write such things?
Kamelito |
|
Status: Offline |
|
|
Rob
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 11-Aug-2015 19:57:37
| | [ #10 ] |
|
|
|
Elite Member |
Joined: 20-Mar-2003 Posts: 6385
From: S.Wales | | |
|
| @Xmas87
Quote:
How much room for improvement do you foresee? Is the aged Warp3D an insurmountable bottleneck? |
Warp3D is a rasterizer only solutuion, i.e it converts vectors into pixels and does none of the actual 3D calculations.
Even the R100 and R200 GPU based cards are seriously under-utilised by Warp3D, the addition of T&L support would greatly benefit users of these older cards as well as the Southern Islands cards. Lets hope that A-EON have serious plans to expand the API since they are no co-owners. |
|
Status: Offline |
|
|
Hans
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 12-Aug-2015 2:11:26
| | [ #11 ] |
|
|
|
Elite Member |
Joined: 27-Dec-2003 Posts: 5098
From: New Zealand | | |
|
| @Xmas87 Quote:
How much room for improvement do you foresee? Is the aged Warp3D an insurmountable bottleneck? |
As Warp3D is right now, it's a major bottleneck. Probably the biggest bottleneck is that CPU does the Transformation, Clipping & Lighting (TCL) rather than the GPU. Apart from being slower, this also prevents us from storing the vertices in VRAM as Vertex Buffer Objects (VBOs). So, every single rendered polygon must be TCL'd by the CPU, and then sent across the PCI(e) bus to the GPU. Imagine the GPU yawning and twiddling its thumbs between operations while it waits for the CPU to send it the next batch of rendering operations to do...
So the short answer is: without updating the Warp3D API to be more modern, it will always be a major bottleneck. On the bright side, it works and is available today.
@kamelit0 Quote:
To my knowledge Amiga devices drives development is not well documented, what information is needed to development such software? is there any relevant information out there or do you need internal information taken from the OS to write such things? |
It depends on what the driver is for. For example: - For audio drivers check out the "ahidev" files here - IIRC, the SDK has some info about USB drivers, and there's a useful doc on os4depot: here - The latest SANA-II specification for network drivers is on the Amiga is here - AFAIK disk controllers are reasonably documented in the SDK and the old AmigaDev CD. You should look at the SCSI.device here. The "New Style Device" NSD standard is here, the trackdisk64 details are here (not sure which one you're supposed to use) - In fact, the SDK and this wiki are good sources for various device drivers: see here - Graphics drivers is a different story. You'll need to ask for access to the necessary documentation and files. Having said that, the RadeonHD driver started as a test program (with another graphics card being the primary display). So, you can get started working on the hardware first, and then get access to the necessary docs to turn it into a real driver later
Finally, there are a few drivers which are open-source, and such source code is a great extra reference next to the documentation.
This ended up being longer than intended, but hopefully it'll be useful for anyone interested in writing a driver.
HansLast edited by Hans on 12-Aug-2015 at 02:15 AM. Last edited by Hans on 12-Aug-2015 at 02:14 AM.
_________________ Join the Kea Campus - upgrade your skills; support my work; enjoy the Amiga corner. https://keasigmadelta.com/ - see more of my work
|
|
Status: Offline |
|
|
kamelito
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 12-Aug-2015 9:04:50
| | [ #12 ] |
|
|
|
Cult Member |
Joined: 26-Jul-2004 Posts: 832
From: Unknown | | |
|
| Thanks. Can you please explain why is Amiga graphics drivers documentation and examples different, why not just put everything on the Wiki?
Kamelito |
|
Status: Offline |
|
|
noXLar
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 12-Aug-2015 10:08:53
| | [ #13 ] |
|
|
|
Cult Member |
Joined: 8-May-2003 Posts: 736
From: Norway | | |
|
| @kamelit0
maybe it's because it's closed source, payed by A-Eon? _________________ nox's in the house!
|
|
Status: Offline |
|
|
AmigaBlitter
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 12-Aug-2015 11:11:53
| | [ #14 ] |
|
|
|
Elite Member |
Joined: 26-Sep-2005 Posts: 3514
From: Unknown | | |
|
| Quote:
As Warp3D is right now, it's a major bottleneck. Probably the biggest bottleneck is that CPU does the Transformation, Clipping & Lighting (TCL) rather than the GPU. Apart from being slower, this also prevents us from storing the vertices in VRAM as Vertex Buffer Objects (VBOs). So, every single rendered polygon must be TCL'd by the CPU, and then sent across the PCI(e) bus to the GPU. Imagine the GPU yawning and twiddling its thumbs between operations while it waits for the CPU to send it the next batch of rendering operations to do... |
There's hope for TCL's implementation on the current Warp 3D?
Would be difficult to implement these features? _________________ retired
|
|
Status: Offline |
|
|
kamelito
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 12-Aug-2015 12:07:07
| | [ #15 ] |
|
|
|
Cult Member |
Joined: 26-Jul-2004 Posts: 832
From: Unknown | | |
|
| I'm not talking about the Drivers he wrote for A-EON but the CBM/Hypérion documentation and sample codes for developers who want to develop Amiga Graphics device drivers. Kamelito Last edited by kamelit0 on 12-Aug-2015 at 12:07 PM.
|
|
Status: Offline |
|
|
tommysammy
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 12-Aug-2015 13:14:47
| | [ #16 ] |
|
|
|
Cult Member |
Joined: 20-Jan-2010 Posts: 664
From: Isselburg,Germany | | |
|
| We need TLC Last edited by tommysammy on 12-Aug-2015 at 02:48 PM.
_________________ Amiga600/Vampire2/PrismaMegaMix
|
|
Status: Offline |
|
|
Hans
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 12-Aug-2015 22:53:42
| | [ #17 ] |
|
|
|
Elite Member |
Joined: 27-Dec-2003 Posts: 5098
From: New Zealand | | |
|
| @AmigaBlitter Quote:
There's hope for TCL's implementation on the current Warp 3D?
Would be difficult to implement these features? |
Adding TCL could be done. MiniGL would probably need a major overhaul to use it though; it really is designed for software TCL and, at a bare minimum, the TCL code would have to be bypassed. How much work it is would depend on whether you want Warp3D to provide software TCL backup for drivers that don't support it, or if you want to leave it up to games/apps to detect and adapt to new/old drivers. Providing a software TCL backup in an updated Warp3D would be the equivalent of embedding MiniGL's TCL core into Warp3D.
@kamelit0 Quote:
Can you please explain why is Amiga graphics drivers documentation and examples different, why not just put everything on the Wiki? |
It probably starts with the fact that Picasso96 (the RTG system used as base) was developed by a third-party, and not Commodore. Neither Picasso96 nor Cybergraphics had public driver development kits. Had Commodore developed it, then it would probably have been open from the start.
Why is the documentation still not open? You'll have to ask Hyperion.
Hans _________________ Join the Kea Campus - upgrade your skills; support my work; enjoy the Amiga corner. https://keasigmadelta.com/ - see more of my work
|
|
Status: Offline |
|
|
BSzili
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 13-Aug-2015 7:01:48
| | [ #18 ] |
|
|
|
Regular Member |
Joined: 16-Nov-2013 Posts: 447
From: Unknown | | |
|
| I'd do my best to update MiniGL if that happens. We could take a clue from how Mesa handled this. It can do the transformations using it's built in sw TnL (used with 3Dfx drivers, etc.), or the driver's one. _________________ This is just like television, only you can see much further.
|
|
Status: Offline |
|
|
AmigaBlitter
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 13-Aug-2015 12:14:02
| | [ #19 ] |
|
|
|
Elite Member |
Joined: 26-Sep-2005 Posts: 3514
From: Unknown | | |
|
| I realize that updating MiniGL or other drivers could take a lot of time. We don't have any news about the current work on OpenGL. Last time we've heard about it (if i recall well) is when a screenshot was provided showing OpenGL working in software mode. I think that more than two years passed since this last info. If the OpenGL port will coming soon, perhaps continue to on the minigl can be a waste of time.
Maybe you can join the OS4 OpenGL team?
:) _________________ retired
|
|
Status: Offline |
|
|
BSzili
| |
Re: Warp3D Driver Development in Pictures - The W3D_SI Drive Posted on 13-Aug-2015 12:24:10
| | [ #20 ] |
|
|
|
Regular Member |
Joined: 16-Nov-2013 Posts: 447
From: Unknown | | |
|
| I bet it's coming soon, just two more weeks! :D Mesa has been announced 5 years ago, and we haven't heard much about it since 2013, when that screenshot was published. MiniGL has the unbeatable advantage of being available today, and working. I consider waiting for vaporware a waste of time. This is the first time I heard of the OS4 OpenGL team. _________________ This is just like television, only you can see much further.
|
|
Status: Offline |
|
|