• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

Dolphin - Emulating Wii and Gamecube Games

ector

Neo Member
I haven't ran the game yet, but to me it seems from these screenshots, and the fact that deactivating EFB-to-RAM helps, that the game is itself rendering the characters to "sprites" dynamically, then drawing the sprites to the screen. So it is drawing using sprites, but the sprites aren't prerendered, rather they're rendered as they're needed. Why it would do that is anyone's guess though.
 

jett

D-Member
ector said:
I haven't ran the game yet, but to me it seems from these screenshots, and the fact that deactivating EFB-to-RAM helps, that the game is itself rendering the characters to "sprites" dynamically, then drawing the sprites to the screen. So it is drawing using sprites, but the sprites aren't prerendered, rather they're rendered as they're needed. Why it would do that is anyone's guess though.

The culprit is a framebuffer hack that was enabled in the emulator. The game doesn't actually do that.
 

ector

Neo Member
jett said:
The culprit is a framebuffer hack that was enabled in the emulator. The game doesn't actually do that.

That's not possible. Dolphin isn't going to randomly decide to render a model to a sprite and then blit it to the screen. The game definitely is doing that, it's just that by using an oversized framebuffer emulation texture, it's going to do it in the emulator resolution instead of Wii native resolution so you can't see it.

By the way I know what I'm talking about, I wrote large chunks of Dolphin :p
 

jediyoshi

Member
ector said:
So it is drawing using sprites, but the sprites aren't prerendered, rather they're rendered as they're needed. Why it would do that is anyone's guess though.

That's what I've been thinking, the way the character clips into the ground at straight lines, it's obvious there isn't any kind of geometry going on there

dqySH.jpg


The Game & Watch levels from SSBB had a similar effect
 
vazel said:
Yea I was also curious where the sprites came from. I played the first level and when he jumps to the background it still looks like the polygonal model. Maybe it's just a leftover from a tool they used in development of the game? Edit: Or maybe jett's right.

I really wish Dolphin would get their new audio plugin out already. I can't play games with music and/or sound effects crapping out. Guess I'm playing the game on the Wii.

so there are sound issues with DKR?
 

Easy_D

never left the stone age
careful said:
Do you absolutely need a quad core? How do you think I would fare with an E8400 @ stock 3.0GHz paired with a GTX 260?

And wow @ Kirby. That's jaw-dropping beautiful. :eek:
The ammount of cores doesn't matter beyond 2, as Dolphin just runs on 2 threads.

A 3.0ghz should work just fine, I don't have any issues with my 3.16ghz C2D :)
 

Durante

Member
I wonder why Rare decided to render the player characters in a separate pass. could they reuse it over multiple frames? (But that wouldn't make much sense since the frame in which they are rendered would still need to complete in 16ms)
 

Easy_D

never left the stone age
Durante said:
3d models rendered separately and then composed into the final image.
So the fuzzy look is the emulator's fault because it can't scale the effect properly?

Like in Luigi's Mansion (Entire screen is fuzzy because of the way they rendered the reflections, iirc) and the heatwaves in Sunshine and that strange DoF filter in WW? To name a few effects that scale horribly with the wrong settings.
 

Durante

Member
Easy_D said:
So the fuzzy look is the emulator's fault because it can't scale the effect properly?
Yes, but it only happens if you don't enable the correct graphics plugin options. (The "fuzzy look" is just it being rendered at the original Wii resolution btw.)
 

Easy_D

never left the stone age
Durante said:
Yes, but it only happens if you don't enable the correct graphics plugin options. (The "fuzzy look" is just it being rendered at the original Wii resolution btw.)
Yes, I am aware, I just word my sentences in a super horrible manner :). I thought I made that clear enough though :lol
 

M3d10n

Member
dark10x said:
I definitely care. I'm curious where those sprites came from and what Retro intended to do with them. This thread doesn't really answer that. You can solve the issue with Dolphin, of course, but the sprites are still bizarre.

Thinking about it, I'd assume they might use sprites when Kong is displayed on distant platforms. Still not sure if they are actually doing that, but it would make sense as dense polygon models at a distant in 480p results in nasty aliasing. Using a sprite would actually produce a cleaner character when zoomed out.

I'm more interested in pulling back the curtain and seeing what is going on with the game than simply getting it to look right on Dolphin. Those sprites are in the game data somewhere and I want to know when and how they are used.
It is simple: DKC doesn't renders the characters directly to the screen. It renders them to off-screen buffers, which are displayed on the screen as sprites. They are, in fact, "real-time rendered sprites".

It's quite obvious because you can increase their resolution by fiddling with framebuffer settings in the emulator. There are no pre-rendered sprites.

Why this is done? The first thing that comes to mind is overlapping multiple characters in the same 2D plane: if they were rendered as normal 3D models, they would clip against each other. Using flat sprites the game can render characters fully in front/behind each other without clipping, like a 2D game would.

The second thing you already figured out: image quality. If the characters are rendered at a fixed resolution that stays the same even when the camera is zoomed out, they will look less aliased.
 

Peterthumpa

Member
vazel said:
Yea I was also curious where the sprites came from. I played the first level and when he jumps to the background it still looks like the polygonal model. Maybe it's just a leftover from a tool they used in development of the game? Edit: Or maybe jett's right.

I really wish Dolphin would get their new audio plugin out already. I can't play games with music and/or sound effects crapping out. Guess I'm playing the game on the Wii.
New audio plugin? Never heard about they developing a new one, at least officialy.
 

Stallion Free

Cock Encumbered
I figured since Sonic is is pretty much unplayable due to the random black screens I would import my save and just go through the levels hudless (Sonic Black Knight projection hack off removes the hud) take screens up to the point I crash in each level. Any interest in seeing that?
 

JADS

Member
Stallion Free said:
I figured since Sonic is is pretty much unplayable due to the random black screens I would import my save and just go through the levels hudless (Sonic Black Knight projection hack off removes the hud) take screens up to the point I crash in each level. Any interest in seeing that?

Pretty much everytime when you use the pink wisp. It's one of the reason why I stopped playing the thing in Dolphin. I could never get rid of the HUD, even without a projection hack. I say go for it for the laughs.
 

Proven

Member
M3d10n said:
It is simple: DKC doesn't renders the characters directly to the screen. It renders them to off-screen buffers, which are displayed on the screen as sprites. They are, in fact, "real-time rendered sprites".

It's quite obvious because you can increase their resolution by fiddling with framebuffer settings in the emulator. There are no pre-rendered sprites.

Why this is done? The first thing that comes to mind is overlapping multiple characters in the same 2D plane: if they were rendered as normal 3D models, they would clip against each other. Using flat sprites the game can render characters fully in front/behind each other without clipping, like a 2D game would.

The second thing you already figured out: image quality. If the characters are rendered at a fixed resolution that stays the same even when the camera is zoomed out, they will look less aliased.

Long story short, it's for multiplayer. Cool.
 

desu

Member
Easy_D said:
Here's a proper shot of the game :D

When you get your settings right, you can't tell the difference between DK and a "real" 3d model.

What other hardware do you use besides a C2D?
 

Stallion Free

Cock Encumbered
Easy_D said:
I got a HD5870 and 4gB of ram.

The DKC:R shot isn't mine though so I have no idea how well it runs.
You should link to the guys post you copped it from as well. It annoys me to see shit people just grabbed from other forums posted in here without giving the people proper credit.
 

Sagitario

Member
M3d10n said:
It is simple: DKC doesn't renders the characters directly to the screen. It renders them to off-screen buffers, which are displayed on the screen as sprites. They are, in fact, "real-time rendered sprites".

It's quite obvious because you can increase their resolution by fiddling with framebuffer settings in the emulator. There are no pre-rendered sprites.

Why this is done? The first thing that comes to mind is overlapping multiple characters in the same 2D plane: if they were rendered as normal 3D models, they would clip against each other. Using flat sprites the game can render characters fully in front/behind each other without clipping, like a 2D game would.

The second thing you already figured out: image quality. If the characters are rendered at a fixed resolution that stays the same even when the camera is zoomed out, they will look less aliased.

So you are actually playing with a sprite? o_O
Considering the game speed and animation quality, the back and forth for the real-time sprite rendering must be pretty intensive o_O
 

Easy_D

never left the stone age
Stallion Free said:
You should link to the guys post you copped it from as well. It annoys me to see shit people just grabbed from other forums posted in here without giving the people proper credit.
Why? Because someone might get sad? You make it sound like plagiarism or something :lol.

I edited my post hours ago to say I took it from the Dolphin boards. It shouldn't be too hard for anyone to find it.

Edit: Ah crap, I realised it's hosted on imageshack, better fix that, I suppose a link to the original post is in order. Also my post came off as incredibly dickish, sorry :D
 

Ledsen

Member
Stallion Free said:
You should link to the guys post you copped it from as well. It annoys me to see shit people just grabbed from other forums posted in here without giving the people proper credit.

Really? Who would actually care about something like that? It's just a screenshot.
 
We're all Emulation brother here, fellas. It's just common courtesy. :D

Got my Twin Snakes rip to work on rev! I'm so happy. :) It freezes right after the hind cinematic right before you get control of Snake once you're outside though :(

Just wan Wind Waker for the first time on Dolphin. Looks amaaaaaziiiinggg O_O A screen or two will come later if anyones interested.
 

JADS

Member
Cuban Legend said:
We're all Emulation brother here, fellas. It's just common courtesy. :D

Got my Twin Snakes rip to work on rev! I'm so happy. :) It freezes right after the hind cinematic right before you get control of Snake once you're outside though :(

Just wan Wind Waker for the first time on Dolphin. Looks amaaaaaziiiinggg O_O A screen or two will come later if anyones interested.

They never fixed the ending bug in Twin Snakes according to the forum :lol
Unless you like Snake driving through a wall
 

Stallion Free

Cock Encumbered
Ledsen said:
Really? Who would actually care about something like that? It's just a screenshot.
IGN stole one of my Wind Waker screens a while back for an article and I was pretty fucking irritated. I called them out on it and they removed it without apologizing. Like Cuban said, it's common courtesy. I expect anyone who steals my screens to link back to Gaf at the very least.
 

flak57

Member
Stallion Free said:
IGN stole one of my Wind Waker screens a while back for an article and I was pretty fucking irritated. I called them out on it and they removed it without apologizing. Like Cuban said, it's common courtesy. I expect anyone who steals my screens to link back to Gaf at the very least.
I don't agree with this, if I used print screen on one of your pics and cropped it so it looked identical to yours, if someone were to use my copy should they give any credit to me?

Or how about just Nintendo and their artists?

Wow though, it's going to be hard to ignore how much better these pics look than on my Wii, tempted to drop a bunch of money on a high class PC for this, but I could purchase so many games with that money...
 

Stallion Free

Cock Encumbered
flak57 said:
I don't agree with this, if I used print screen on one of your pics and cropped it so it looked identical to yours, if someone were to use my copy should they give any credit to me?

Or how about just Nintendo and their artists?

Wow though, it's going to be hard to ignore how much better these pics look than on my Wii, tempted to drop a bunch of money on a high class PC for this, but I could purchase so many games with that money...
Then explain why they removed it.
 

Fox the Sly

Member
flak57 said:
I don't agree with this, if I used print screen on one of your pics and cropped it so it looked identical to yours, if someone were to use my copy should they give any credit to me?

Or how about just Nintendo and their artists?

Are... are you serious? :lol
 

Ledsen

Member
Stallion Free said:
IGN stole one of my Wind Waker screens a while back for an article and I was pretty fucking irritated. I called them out on it and they removed it without apologizing. Like Cuban said, it's common courtesy. I expect anyone who steals my screens to link back to Gaf at the very least.

That's a professional publication, this is a forum. It's a completely different matter.
 

Luigiv

Member
M3d10n said:
It is simple: DKC doesn't renders the characters directly to the screen. It renders them to off-screen buffers, which are displayed on the screen as sprites. They are, in fact, "real-time rendered sprites".

It's quite obvious because you can increase their resolution by fiddling with framebuffer settings in the emulator. There are no pre-rendered sprites.

Why this is done? The first thing that comes to mind is overlapping multiple characters in the same 2D plane: if they were rendered as normal 3D models, they would clip against each other. Using flat sprites the game can render characters fully in front/behind each other without clipping, like a 2D game would.

The second thing you already figured out: image quality. If the characters are rendered at a fixed resolution that stays the same even when the camera is zoomed out, they will look less aliased.
That makes sense. I noticed in videos that when DK just misses a platform he falls in front of the geometry, so I had a feeling he was rendered on a separate plane.
 

Nabs

Member
There's a fix for the latest dolphin (r6461). just disable panic handlers and dkcr should work alright. i don't know if it'll be faster than the old ones.
 

Chairhome

Member
Ledsen said:
That's a professional publication, this is a forum. It's a completely different matter.
Its really common courtesy. Think about how much time and effort Stallion Free puts into making these amazing screenshots and how much we appreciate it. Then imagine someone posting that screenshot in another community with no explanation and no credit. I'm sure Stallion Free isn't losing sleep over it, but it would piss me off, too.
 

vocab

Member
Stallion Free what kind of performance you getting with sonic colors? I'm only getting like 20 fps with the occasional audio stutter.


It's a 30 fps game, so almost 100%!
 

jediyoshi

Member
Nabs said:
There's a fix for the latest dolphin (r6461). just disable panic handlers and dkcr should work alright. i don't know if it'll be faster than the old ones.

Runs about the same for me. Still trying to get decent settings to give the silhouette levels justice, they don't seem to like 9xaa

iEwba.jpg


iEn44.jpg


i9QQg.jpg
 
Top Bottom