Welcome, Unregistered.

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Reply
Old 06-Sep-2006, 07:44   #1
one
Unruly Member
 
Join Date: Jul 2004
Location: Minato-ku, Tokyo
Posts: 4,705
Default Capcom's "Framework" game engine

http://www.rbbtoday.com/news/20060904/33625.html

At CEDEC 2006 Capcom spoke about its brand-new game engine called "Framework". Here's my rough translation of the article above.
  • The Framework engine is adopted in games including Dead Rising, Lost Planet, Resident Evil 5, Devil May Cry 4, Monster Hunter 3.
  • The Framework engine has 3 characteristics: multi-platform support, multi-core optimization, tool integration.
  • As for multi-core optimization, the session mainly discussed methods for symmetric multi-core (Xbox 360). Since parallelization per module or loop which are often seen in parallel programming is not suitable for a game engine, parallelization per task including player character, enemy, bullet, camera, effect generator etc. is mainly used in the engine.
  • To suppress parallelization bugs such as dead lock, they made 2 clearly separated rules called "parallel update" which has no dependency and "synchronized update" in which each task can refer to and update other tasks. Task relationships and synchronization update intervals are adjustable on a GUI tool to make it easy to find parallel processes against the rules.
  • The performance for 1 thread vs 6 threads is, 2.6x in Dead Rising, and 2.15x in Lost Planet (under development). The CPU load is 80% for the main thread, 70% for rendering and sound, and 50-60% for other parallelized tasks.
  • There were only a few parallelization-related bugs against the rules in thousands of bug reports in the bug-checking period of the Dead Rising development, which shows totally parallelized application doesn't necessarily equal a bug-hell and they can realize stable parallelization thanks to the parallelization techniques and the strict rules in the Framework engine.
  • As for hi-def graphics, they pointed out "frame rate, fill rate, texture quality and size are more problematic than shader." Because of their estimation that 60fps is impossible for next-gen-esque imagery, they added lightweight 2.5D motion blur to make 30fps look smoother. Besides MSAA mini buffer is used in effect drawing to gain more fill rate (with the premise that GPU can use MSAA mini-buffer without cost). For better texture compression, they do original texture compression which appropriates an alpha channel for an extended information area and decompress it with programmable shaders.
  • The Framework engine can run not only on Xbox 360 but also on PLAYSTATION3 (asymmetric multi-core) and PC (single-core/multi-core). Parameters of its units can be edited to test it on real hardwares for each platform.
Task-update dependency lines
http://www.rbbtoday.com/cgi-bin/news...3625-ca02.html
24.2 fps without MSAA mini-buffer, 32.1 fps with MSAA mini-buffer
http://www.rbbtoday.com/cgi-bin/news...3625-ca03.html
GUI tool
http://www.rbbtoday.com/cgi-bin/news...3625-ca04.html
one is offline   Reply With Quote
Old 06-Sep-2006, 08:06   #2
pipo
Senior Member
 
Join Date: Jun 2005
Posts: 2,616
Default

Cheers one!
pipo is offline   Reply With Quote
Old 06-Sep-2006, 08:18   #3
Hardknock
Senior Member
 
Join Date: Jul 2005
Posts: 2,192
Default

Awesome! Thanks One!!

Quote:
Originally Posted by one View Post
[*]The performance for 1 thread vs 6 threads is, 2.6x in Dead Rising, and 2.15x in Lost Planet (under development). The CPU load is 80% for the main thread, 70% for rendering and sound, and 50-60% for other parallelized tasks.
So what does this mean? With all 6 threads vs just 1 they only get a bit under 3 times increase in CPU performance??? Will this increase over time?

Quote:
Besides MSAA mini buffer is used in effect drawing to gain more fill rate (with the premise that GPU can use MSAA mini-buffer without cost).

24.2 fps without MSAA mini-buffer, 32.1 fps with MSAA mini-buffer
http://www.rbbtoday.com/cgi-bin/news...3625-ca03.html
Also this. Is this talking about using the Edram for effects besides AA?? I thought this wasn't possible and you could only use it for AA?

Last edited by Hardknock; 06-Sep-2006 at 08:30.
Hardknock is offline   Reply With Quote
Old 06-Sep-2006, 08:29   #4
pipo
Senior Member
 
Join Date: Jun 2005
Posts: 2,616
Default

Quote:
Originally Posted by Hardknock View Post
So what does this mean? With all 6 threads vs just 1 they only get almost a 3 times increase in CPU performance??? Will this increase over time?
Most likely. It's called optimization.

Quote:
Also this. Is this talking about using the Edram for effects besides AA?? I thought this wasn't possible and you could only use it for AA?
You can use it as a high speed buffer for anything you like.
pipo is offline   Reply With Quote
Old 06-Sep-2006, 08:35   #5
Fafalada
Senior Member
 
Join Date: Feb 2002
Posts: 2,767
Default

Quote:
Originally Posted by Hardknock
Is this talking about using the Edram for effects besides AA??
It's talking about rendering effects in low-resolution to save renderingtime/fillrate (using MSAA to reduce effects of lowered resolution).
__________________
"I see Subversion as being the most pointless project ever started."
Linus Torvalds
Fafalada is offline   Reply With Quote
Old 06-Sep-2006, 08:38   #6
Lord Darkblade
Junior Member
 
Join Date: Jun 2005
Posts: 49
Default

Remember that the X360 threads are not true hardware threads (not fully capable of independent actions), its more like 3 main threads and 3 lightweight threads (iirc the PPE in Cell is more similar to two hardware threads), so a speed up of 2.6 is actually pretty good for a first generation game engine!
Lord Darkblade is offline   Reply With Quote
Old 06-Sep-2006, 08:48   #7
one
Unruly Member
 
Join Date: Jul 2004
Location: Minato-ku, Tokyo
Posts: 4,705
Default

Quote:
Originally Posted by Hardknock View Post
So what does this mean? With all 6 threads vs just 1 they only get a bit under 3 times increase in CPU performance??? Will this increase over time?
You know they have only 3 real cores! They are pretty good figures for SMP I think.
one is offline   Reply With Quote
Old 06-Sep-2006, 08:54   #8
Bohdy
Member
 
Join Date: Jun 2003
Posts: 731
Default

Quote:
Originally Posted by Fafalada View Post
It's talking about rendering effects in low-resolution to save renderingtime/fillrate (using MSAA to reduce effects of lowered resolution).
That's what I had guessed. I knew it wasn't just me that thought the blown-up MSAA screen looked worse than the other one.

Just effects, or are they rendering the whole game this way?
Bohdy is offline   Reply With Quote
Old 06-Sep-2006, 09:12   #9
pc999
Senior Member
 
Join Date: Mar 2004
Location: Portugal
Posts: 3,528
Default

Thanks for the info.

Quote:
Originally Posted by one View Post
[*]As for hi-def graphics, they pointed out "frame rate, fill rate, texture quality and size are more problematic than shader." Because of their estimation that 60fps is impossible for next-gen-esque imagery, they added lightweight 2.5D motion blur to make 30fps look smoother.
This is really bad IMO, this will mean that we will see very few games at 60FPS. They do provide any reason for such estimation?
__________________
Quote:
Originally Posted by nAo View Post
Photorealism is boring, what you want is photosurrealism
pc999 is offline   Reply With Quote
Old 06-Sep-2006, 09:53   #10
Shifty Geezer
Grumpy Mod
 
Join Date: Dec 2004
Location: In a pretty pink padded cell
Posts: 25,984
Default

Quote:
Originally Posted by Hardknock View Post
So what does this mean? With all 6 threads vs just 1 they only get a bit under 3 times increase in CPU performance??? Will this increase over time?
The 2.6x sounds like a good figure. You've got 3 cores, so the very most performance gain you could get over 1 core is 3x. The only way you'll get better than 3x increase is if your single thread is poor at using core resources. An efficient thread won't leave much left for a second thread to run off.

I'd be pleased with 2.5x as much performance from 3 cores on an SMP processor. I think typically dual-core processors are around 1.5x the performance of their single core varieties.
__________________
Shifty Geezer
...

Tolerance for internet moronism is exhausted. Anyone talking about people's attitudes in the Console fora, rather than games and technology, will feel my wrath. Read the FAQ to remind yourself how to behave and avoid unsightly incidents.
Shifty Geezer is offline   Reply With Quote
Old 06-Sep-2006, 10:15   #11
Rangers
Regular
 
Join Date: Aug 2006
Posts: 6,748
Default

Quote:
Originally Posted by one View Post
http://www.rbbtoday.com/news/20060904/33625.html
[*]The performance for 1 thread vs 6 threads is, 2.6x in Dead Rising, and 2.15x in Lost Planet (under development). The CPU load is 80% for the main thread, 70% for rendering and sound, and 50-60% for other parallelized tasks.[*]There were only a few parallelization-related bugs against the rules in thousands of bug reports in the bug-checking period of the Dead Rising development, which shows totally parallelized application doesn't necessarily equal a bug-hell and they can realize stable parallelization thanks to the parallelization techniques and the strict rules in the Framework engine.[*]As for hi-def graphics, they pointed out "frame rate, fill rate, texture quality and size are more problematic than shader." Because of their estimation that 60fps is impossible for next-gen-esque imagery, they added lightweight 2.5D motion blur to make 30fps look smoother. Besides MSAA mini buffer is used in effect drawing to gain more fill rate (with the premise that GPU can use MSAA mini-buffer without cost). For better texture compression, they do original texture compression which appropriates an alpha channel for an extended information area and decompress it with programmable shaders.[*]The Framework engine can run not only on Xbox 360 but also on PLAYSTATION3 (asymmetric multi-core) and PC (single-core/multi-core). Parameters of its units can be edited to test it on real hardwares for each platform
I have read, not sure if it's been discussed here, but this engine stuff from Capcom is a major change for Japanese developers. Previously they had built games from scratch each time, shunning the Western practice of engines such as UE3.0. So I just think that aspect is very interesting.

As to the hardware thread discussion, yes, X360 is 3 main threads and 3 helper threads. I recall a microsoft 360 programming slide that discussed this. It even said if you're not careful, adding the second thread (on a single core) can actually slow things down. So 360 is best though of as 3 main threads and three secondary threads. As already discussed in this topic by others.

The stuff about parallelization sounds very encouraging, that they aren't having too much trouble with it (if we are too believe them anyway).

I dont get the CPU usage figures, as they add up to well more than 100%. Perhaps they refer to the 2.6 figure? (aka 260%=total).


"besides MSAA mini buffer is used in effect drawing to gain more fill rate (with the premise that GPU can use MSAA mini-buffer without cost)."

This is in reference to EDRAM I assume? If so wow, whatever it is they're saying sounds really encouraging.

"For better texture compression, they do original texture compression which appropriates an alpha channel for an extended information area and decompress it with programmable shaders."

Now this doesn't sound as great..using shader power to aid decompression? Anyway, amazing how clever programmers always are about doing stuff like this, on all platforms.

btw just an added note, Capcom is recently in love with the 360, as Dead Rising shipped 500k last I heard, and quite exceeded their sales expectations, causing them to reconsider perhaps much more multi-platform stuff.
________
Aire Vaporizer Review

Last edited by Rangers; 05-Sep-2011 at 04:57.
Rangers is offline   Reply With Quote
Old 06-Sep-2006, 11:11   #12
ZiFF
 
Join Date: Jul 2006
Posts: 166
Default

60fps impossible?

Seems like DMC4 is not fully using this engine. They just confirmed 60fps in the latest Famitsu.

Last edited by ZiFF; 06-Sep-2006 at 11:13.
ZiFF is offline   Reply With Quote
Old 06-Sep-2006, 11:29   #13
assen
Senior Member
 
Join Date: May 2003
Location: Skirts of Vitosha
Posts: 1,377
Default

Quote:
Originally Posted by pc999 View Post
This is really bad IMO, this will mean that we will see very few games at 60FPS. They do provide any reason for such estimation?
With new hardware architectures getting more performance in the form of parallelism instead of single-thread speed, getting 60 fps will become harder and harder. Getting good performance from a multicore CPU is one thing; getting it with minimal latency after you've done all the task splitting, waiting for completion and getting your data back from the "other" cores, is another thing completely. There might be games that achieve 60 fps with 30-fps-like user input latencies thanks to deep buffering, but this defeats the purpose of having 60 fps in the first place.

I'm not sure I understand the "MSAA minibuffer for effects" - can anyone clarify?
__________________
Twitter
assen is offline   Reply With Quote
Old 06-Sep-2006, 12:06   #14
Bohdy
Member
 
Join Date: Jun 2003
Posts: 731
Default

Quote:
Originally Posted by Rangers View Post
I have read, not sure if it's been discussed here, but this engine stuff from Capcom is a major change for Japanese developers. Previously they had built games from scratch each time, shunning the Western practice of engines such as UE3.0. So I just think that aspect is very interesting.
Not all all of them. I know that Nintendo has had an internal engine codebase which was re-used and modified for different projects since Mario64.
Bohdy is offline   Reply With Quote
Old 06-Sep-2006, 12:28   #15
Dot50Cal
Member
 
Join Date: Jul 2003
Location: Pennsylvania, USA
Posts: 394
Default

Thanks very much One! The RE world has been a bit dry on news lately, and its nice to know the codename and information on the engine RE5 will be using finally.
Dot50Cal is offline   Reply With Quote
Old 06-Sep-2006, 12:36   #16
MasterDisaster
Member
 
Join Date: Aug 2006
Posts: 290
Send a message via MSN to MasterDisaster
Default

Quote:
Originally Posted by Lord Darkblade View Post
Remember that the X360 threads are not true hardware threads (not fully capable of independent actions), its more like 3 main threads and 3 lightweight threads (iirc the PPE in Cell is more similar to two hardware threads), so a speed up of 2.6 is actually pretty good for a first generation game engine!
I remember that the VMX units have the needed registry space to run parallel task B while its core is busy with a task A
those units can do decompression and others Dx functions without delay main task

I undestood that a main program can do 3 tasks main (one-per-core) and 3 helper tasks, or 3 main tasks while 3 parallel task are busy doing other (decompression is an example)

is this right?
MasterDisaster is offline   Reply With Quote
Old 06-Sep-2006, 16:07   #17
Guden Oden
Senior Member
 
Join Date: Dec 2003
Posts: 6,201
Icon Smile

Quote:
Originally Posted by assen View Post
There might be games that achieve 60 fps with 30-fps-like user input latencies thanks to deep buffering, but this defeats the purpose of having 60 fps in the first place.
Not at all IMO.

I seriously doubt pretty much anyone would actually be able to feel the difference between 30 and 60fps inputs. Human reaction time - even in the prime of our youth and when we're ready and waiting for it to happen, whatever "it" may be - is on the order of several tenths of a second. That's anywhere from 5-10 frames, maybe more. While we can anticipate things via "feel" and muscle memory (such as when doing combo breakers in a fighting game etc), our mind isn't actually precise enough to notice one extra 1/60th of a second of delay.

60fps vs. 30 is all about visual smoothness of video updates, NOT input latency. IMO.

Quote:
I'm not sure I understand the "MSAA minibuffer for effects" - can anyone clarify?
I would hazard a guess and say it's a render target that's only large enough to fit entirely within the eDRAM memory space, and thus is smaller than a full 720P frame... If it's something else, then I'm not inventive enough to figure it out with only the vague description given.
__________________
Top one reason why capital punishment is immoral and wrong:
You can release an innocently convicted man from jail,
but you cannot release an innocently convicted man from death.
Guden Oden is offline   Reply With Quote
Old 06-Sep-2006, 16:18   #18
expletive
Senior Member
 
Join Date: Jun 2005
Location: Bridgewater, NJ
Posts: 3,125
Default

Well one thing this seems to point to is LP on PS3 and DMC on 360. If theyre building an entire engine and one of its main goals is 'multi platform support', it would seem they are positioning themselves to do this.
expletive is online now   Reply With Quote
Old 06-Sep-2006, 16:36   #19
assen
Senior Member
 
Join Date: May 2003
Location: Skirts of Vitosha
Posts: 1,377
Default

Quote:
Originally Posted by Guden Oden View Post
I seriously doubt pretty much anyone would actually be able to feel the difference between 30 and 60fps inputs. Human reaction time - even in the prime of our youth and when we're ready and waiting for it to happen, whatever "it" may be - is on the order of several tenths of a second. That's anywhere from 5-10 frames, maybe more. While we can anticipate things via "feel" and muscle memory (such as when doing combo breakers in a fighting game etc), our mind isn't actually precise enough to notice one extra 1/60th of a second of delay.
As a ex-pianist and occasional keyboard player on my PC, with a MIDI keyboard and softsynths, I can assure you that a latency of 33 ms (30 Hz) is "almost unplayable", while a latency of 17 ms is "barely tolerable". If you get a decent sound card, you can achieve 4-5 ms of latency, and pro keyboardists still don't like playing with softsynths because of that latency. (Good hardware synths achieve < 1ms.)


Quote:
Originally Posted by Guden Oden View Post
I would hazard a guess and say it's a render target that's only large enough to fit entirely within the eDRAM memory space, and thus is smaller than a full 720P frame... If it's something else, then I'm not inventive enough to figure it out with only the vague description given.
But what's the "for effects" part?

one, is there more detailed technical info in the Japanese text?
__________________
Twitter
assen is offline   Reply With Quote
Old 06-Sep-2006, 16:50   #20
pipo
Senior Member
 
Join Date: Jun 2005
Posts: 2,616
Default

Quote:
Originally Posted by assen View Post
...while a latency of 17 ms is "barely tolerable".
I agree. 15ms tops I'd say.
pipo is offline   Reply With Quote
Old 06-Sep-2006, 16:59   #21
one
Unruly Member
 
Join Date: Jul 2004
Location: Minato-ku, Tokyo
Posts: 4,705
Default

Quote:
Originally Posted by assen View Post
one, is there more detailed technical info in the Japanese text?
No it's all there. Fafalada already gave an explanation in his comment above and I think it's valid.
one is offline   Reply With Quote
Old 06-Sep-2006, 17:13   #22
Dr. Nick
Member
 
Join Date: Jul 2005
Posts: 676
Default

Quote:
Originally Posted by expletive View Post
Well one thing this seems to point to is LP on PS3 and DMC on 360. If theyre building an entire engine and one of its main goals is 'multi platform support', it would seem they are positioning themselves to do this.
If anything it means RE5 is still headed for both platforms same goes future titles like Dead Rising 2 and other unannounced titles. Big games like Devil May Cry that can be supported by the fan base of one system and likely received funding from one of the console manufactures will likely remain exclusive while lesser titles that need all the help they can get will be multiplaform. I do hope to see games like Breath of Fire and RE Online(should have been multiplatform last gen) do this.
__________________
"The most rewarding part was when he gave me my money"

Last edited by Dr. Nick; 06-Sep-2006 at 17:18.
Dr. Nick is offline   Reply With Quote
Old 06-Sep-2006, 17:29   #23
Fran
Dev
 
Join Date: Jun 2006
Location: Frankfurt, Germany
Posts: 131
Default

Quote:
Originally Posted by Rangers View Post
I have read, not sure if it's been discussed here, but this engine stuff from Capcom is a major change for Japanese developers. Previously they had built games from scratch each time, shunning the Western practice of engines such as UE3.0. So I just think that aspect is very interesting.
I'm not a big fan of Game Frameworks, not merely from a performance point of view, but more from a productivity point of view. Surely, there are parts that can be pretty easily moved from project to project (math library, debugging tools, memory allocators, lots of low level stuff), but when it comes to the engine itself, I think it takes much less time and it costs much less to just write what a game needs and nothing more, rather than trying to force a Big Framework To Bind Them All to do what you need and still have to maintain all the code that you dont really need but it's there to add flexibility.

I definitely don't think that the old myth of reusable code is the way to reduce costs, there are other more effective ways with a good record of success in other fields.

Not everyone agrees with me on this though, well, in the game industry, very few people agree with me on this.

Fran/Fable2
Fran is offline   Reply With Quote
Old 06-Sep-2006, 18:21   #24
Megadrive1988
Senior Member
 
Join Date: May 2002
Posts: 4,307
Default

Quote:
Originally Posted by pc999 View Post
Thanks for the info.



This is really bad IMO, this will mean that we will see very few games at 60FPS. They do provide any reason for such estimation?
it's my firm belief that neither Xbox 360 nor PS3 really have enough raw pixel fillrate
(for most developers) to do 60 FPS while displaying truly next generation imagry.

both Xenos and RSX only have 8 ROPs and only ~4 Gpixel/s fillrate. 720p uses most of that up, so they're almost down to fillrates of last generation consoles once they've asended to HD resolution. I made a thread about this.

IMO both consoles should've had ~12 Gpixels/sec. nearly free 4x AA (like Xenos) and the option to goto 8x AA at moderate fillrate/bandwidth cost (less cost than with PC GPUs).


does that mean we will never see next-gen graphics at 60fps? no, not at all, but there will be few games that do it. options are, go down to 480p or cut out anti-aliasing
(cutting out AA will help PS3 more than Xbox 360).

I've heard time after time that fillrate is no longer very important, with shaders taking over in importance. well, that might be true to some extent, but it doesn't mean fillrate is no longer important or that 4 Gpixels/sec will "cut it".
Megadrive1988 is offline   Reply With Quote
Old 06-Sep-2006, 18:40   #25
Arwin
Now Officially a Top 10 Poster
 
Join Date: May 2006
Location: Maastricht, The Netherlands
Posts: 12,879
Default

I think AA as we know it (including MSAA) will disappear, or at the very least become less important as other effects take over.
Arwin is offline   Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 21:29.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.