Revisiting OpenGL + G2 GPU?

This is a forum for discussing the feasibility of getting emulators, games, or other applications that have had their source released ported to the Dreamcast. Please read the Porting FAQ before starting a topic in this forum!
Post Reply
Senk
DCEmu Crazy Poster
DCEmu Crazy Poster
Posts: 33
https://www.artistsworkshop.eu/meble-kuchenne-na-wymiar-warszawa-gdzie-zamowic/
Joined: Wed Apr 04, 2012 1:58 pm
Location: Virginia
Has thanked: 0
Been thanked: 0
Contact:

Revisiting OpenGL + G2 GPU?

Post by Senk »

So, I've been looking at the port of OpenGL for KallistiOS and reading older topics regarding thoughts on its performance and capabilities. The Dreamcast uses the PowerVR CLX2 as its GPU, which has 8 MB of memory. Half of that memory is taken up by the framebuffer and other necessities; so, we actually have 4 MB to work with? Furthermore, the GPU only runs at 100 MHz and has a fairly small bus of 64 bits to transfer information. Overall, it seems incredibly weak to pull off most OpenGL tasks.

Of course, back when the Dreamcast was released, OpenGL was at version... 1.2?

My question is whether or not a port of OpenGL to the Dreamcast would be able to handle shaders. Since shaders were introduced into OpenGL as an extension in version 1.4 (released in 2002), it seems like the Dreamcast was just a few years too early to get hardware that could handle those capabilities. From what I can see, ports of OpenGL are far from complete and offer the bare minimum in terms of functionality. I would love to see basic vertex and fragment shaders made available in OpenGL for the Dreamcast, but I don't think it's possible to accomplish with the hardware. Am I wrong?

--------------------------------
[EDIT]
See my post below about the hypothetical situation of a GPU integrating with the G2 port.
Last edited by Senk on Sun Apr 15, 2012 3:52 pm, edited 1 time in total.
Ayla
DC Developer
DC Developer
Posts: 142
Joined: Thu Apr 03, 2008 7:01 am
Has thanked: 0
Been thanked: 4 times
Contact:

Re: Revisiting OpenGL

Post by Ayla »

There is no hardware for that. Also, I think OpenGL ES 1.1 would suit the dreamcast better.
Senk
DCEmu Crazy Poster
DCEmu Crazy Poster
Posts: 33
Joined: Wed Apr 04, 2012 1:58 pm
Location: Virginia
Has thanked: 0
Been thanked: 0
Contact:

Re: Revisiting OpenGL

Post by Senk »

So, another thought crossed my mind. This may be entirely ludicrous, but I want to run it by someone.

This is all hypothetical. Assume that we have the entire G2 bus (that is the bus for the modem, right?) mapped out and fully understand how to make parts to integrate with it. With the broadband adapter, you could get transfer speeds up to 10 MiB and 100 MiB; so, I'm assuming that other products could attain a speed somewhere close to that.

Now, assume there was a device built to connect to the G2 bus of the Dreamcast. That device contains a graphics card and a VGA-out port. The idea would be to have information sent from the SH4 processor go to the graphics card to be handled and then sent out through the VGA port.

This is also assuming that a driver has been written to handle communication between the processor and the GPU through the G2 bus and that the games being played use that graphics card instead of the built-in Dreamcast GPU and video output.

Now assuming the communication was possible and the new GPU could interpret information and output screen pixels properly, which it should be able to do, would this run well with the Dreamcast? The bottlenecks would be the speed of the SH4 processor and the speed of data transfer to the GPU. Once the information was within the GPU, it should be able to process things much, much faster and also open up new capabilities (depending on how new the GPU is) such as shading.

So, hypothetically, you could introduce better graphical processing to the Dreamcast and, depending on the GPU, introduce GPGPU to the Dreamcast. What are your thoughts on this? If you think it's impossible for this to happen, please give me detailed reasons so I can better-understand the limitations of the Dreamcast. Saying things like "no one will ever do this" is not the answer I'm looking for.

Essentially, I'm saying that a GPU and VGA port are built to integrate with the G2 port (if that is the modem's port) and a new subset of instructions built off of the SH4's standard communication with the port could be used to send information to the GPU. Then, players would hook up their Dreamcasts through the port from the G2 GPU instead of the standard video output port.
User avatar
Quzar
Dream Coder
Dream Coder
Posts: 7497
Joined: Wed Jul 31, 2002 12:14 am
Location: Miami, FL
Has thanked: 4 times
Been thanked: 9 times
Contact:

Re: Revisiting OpenGL + G2 GPU?

Post by Quzar »

The limitations of the bus are so severe that you would not be able to feed a new GPU enough data to have it output anything interesting. This could be done, but would not achieve better video than the DC can do by stock, and would take insane amounts of R&D. It would be an extremely frustrating, costly, and pointless exercise. A much more informative and interesting set of projects along the same idea would be to build a replacement BBA out of source-able parts. The only viable one that has been done used scavenged parts from an obscure model of PC network card that was just right for the purpose.
"When you post fewer lines of text than your signature, consider not posting at all." - A Wise Man
Ayla
DC Developer
DC Developer
Posts: 142
Joined: Thu Apr 03, 2008 7:01 am
Has thanked: 0
Been thanked: 4 times
Contact:

Re: Revisiting OpenGL + G2 GPU?

Post by Ayla »

Quzar wrote:A much more informative and interesting set of projects along the same idea would be to build a replacement BBA out of source-able parts. The only viable one that has been done used scavenged parts from an obscure model of PC network card that was just right for the purpose.
I wonder if it'd be possible to do that using a Raspberry Pi... :grin:
Post Reply