Welcome! Log In Create A New Profile

Advanced

Learning Graphics Programming for Wii

Posted by sanman 
Learning Graphics Programming for Wii
November 04, 2009 05:30AM
Hi,

I was looking for links to as many useful sites as possible that would help me to learn the Wii's graphics API, which I think is called GX.

I was looking for tutorials, sample code, examples, etc - anything that can help me learn more about doing graphics on the Wii - especially 3D graphics. My understanding is that Wii's graphics API is similar to or derived from GameCube's, so perhaps even similar info for GameCube might help me as well.

I have a background in coding C# for ASP.NET and I did C++ back in school, but I have no formal graphics programming experience under my belt.
I've dabbled in 3D as a hobby, and so I know most of the terminology and concepts, and understand the math, but I've never really created anything in an OpenGL type of API language.

If anybody can help me out, I would really appreciate it.

Thanks!
Re: Learning Graphics Programming for Wii
November 04, 2009 01:33PM
There are examples of GX in the examples folder inside of your devkitPRO folder.
Re: Learning Graphics Programming for Wii
November 04, 2009 09:57PM
Hi,

Thanks so much for your reply. Okay, I see that now.

I don't know too much about game development, but I'd like to ask about what useful free tools and utilities exist for doing game development on the Wii.


I've read about various "game engines", including engines like Torque and Unity which have been advertised as being available for the Wii.
I've always assumed that a "game engine" is kind of like a runtime or framework to pump out the graphics during actual gameplay.
I've since learned that a "game engine" is also able to include a developmental toolset for creating and designing games as well, and uses its own scripting language to achieve graphics and interaction.

If that's the case, what game engines are available for the Wii, and what would be the benefit in learning to do graphics directly on the Wii through GX, etc, if a game engine can do all these things instead?
Re: Learning Graphics Programming for Wii
November 04, 2009 10:11PM
There are no game engine for Wii Homebrew development. But you could use framework libraries: [wiibrew.org]
Re: Learning Graphics Programming for Wii
November 04, 2009 11:01PM
Well, there's actually a game engine available for Wii homebrew. It's still under development but at least it can be usefull to illustrate how that stuff work. It's called Revolution Engine, you can search it on wiibrew wiki or, if you want and it's not considered spam, I can post the link.
Re: Learning Graphics Programming for Wii
November 04, 2009 11:33PM
technik, I forgot about that engine since it's still in alpha. Are you still working on it?

There is no problem giving away the link, here it is: [wiibrew.org]
Re: Learning Graphics Programming for Wii
November 05, 2009 05:03AM
Hi, thanks for the responses.
Technik, thanks, I visited your Revolution site.

Tell me - have any of you heard of OGRE.rb and Shattered Ruby? Together they seem to form a 3D game development engine derived from Ruby-on-Rails.
Go to the bottom of this page, and also look at the one that comes after it:

[www.oreillynet.com]


Also here:

[github.com]

[ogrerb.rubyforge.org]


As a web developer, I've dabbled with Ruby-on-Rails, and find it to be a very agile and intuitive system for web development.

I'm wondering if something like OGRE.rb and Shattered Ruby could be adapted for Wii game development? This could then ease the game development process.



Edited 3 time(s). Last edit at 11/05/2009 05:24AM by sanman.
Re: Learning Graphics Programming for Wii
November 06, 2009 12:50AM
Upon further reading, here is something I found:

[kenai.com]

The log said Jun-2009, so that seems recent enough.


[kenai.com]

It doesn't do 3D yet, but apparently that's on the roadmap.
Re: Learning Graphics Programming for Wii
November 06, 2009 02:57AM
I hate to break it to you but that wont work for a number of reasons... Foremost because its written in ruby and java...



Edited 1 time(s). Last edit at 11/06/2009 02:58AM by Arikado.
Re: Learning Graphics Programming for Wii
November 06, 2009 04:57AM
Hi,

Could you explain why? Anything is going to have to compile into machine code anyway - so what's the difference on what language you code it in?
I assume the Wii's hardware deals in executable code, and not in source code. It's only your compiler that cares about what source language is used.

Why shouldn't it be possible to code Java or Ruby apps for the Wii?
Re: Learning Graphics Programming for Wii
November 06, 2009 08:09AM
Quote
sanman
Hi,

Could you explain why? Anything is going to have to compile into machine code anyway - so what's the difference on what language you code it in?
I assume the Wii's hardware deals in executable code, and not in source code. It's only your compiler that cares about what source language is used.

Why shouldn't it be possible to code Java or Ruby apps for the Wii?

Well in basic terms you need a compiler that understands the syntax of say Java code then creates machine code from it. The only way to currently create an executable for Wii right now is through C/C++ and gcc. Sorry I don't know anything about Ruby so I can't comment on it. And no you can't just run PC machine code on Wii for so many different reasons.

As I understand Java is Sun's baby and is not open source so there's no way for a developer to port it.
Re: Learning Graphics Programming for Wii
November 06, 2009 11:04AM
@scanff : Java became open source a while ago... though it's still Sun's baby... Sun is acquired by Oracle by the way... So java is now Oracle's grandchild too :) (along with mysql)



Edited 2 time(s). Last edit at 11/06/2009 11:05AM by I.R.on.
Re: Learning Graphics Programming for Wii
November 06, 2009 08:08PM
Quote
I.R.on
@scanff : Java became open source a while ago... though it's still Sun's baby... Sun is acquired by Oracle by the way... So java is now Oracle's grandchild too :) (along with mysql)

That's cool. Then I'm sure someone is probably trying to port Java as we speak.

I don't like that - Oracle owns MySQL, I guess we should say goodbye to it now.
Re: Learning Graphics Programming for Wii
November 07, 2009 12:06AM
Well, your compiler is designed to compile for a particular processor - in this case it's PowerPC, since Broadway is a PowerPC processor.

So it's taking your source language and converting it into machine code for the PowerPC processor.

Similarly, your Graphics API should be designed to work with a particular Graphics Processor, which in this case is the GX API for the Hollywood chip.

And even higher level is the graphics engine, which can remove the minutiae of programming details, by condensing them into a scripting language from which you can produce games.

A language like Java is meant to be divorced from the hardware side, in the sense that it is fully encapsulated and does not directly access any platform-specific registers. All of that stuff is done by the runtime (ie. JRE)
Just as Java has no pointers, likewise Ruby doesn't either. To me, this makes both friendlier than C++.
In other words, the compiler and runtime take care of the trivialities of pointer manipulation, so that the programmer doesn't have to worry about them.

In the case of a hardware platform like Wii, it would be nice to have a runtime (not Rails of course) that removes those kinds of messy chores from the challenges of programming.
Re: Learning Graphics Programming for Wii
November 09, 2009 10:26AM
We do have a runtime that does take care of the messier parts, like using memory mapped registers and so on.
Sorry, only registered users may post in this forum.

Click here to login