 |
 |
|
 |
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Actually, I'm rather surprised at how low-end the XBox hardware and graphics
stuff is. The CPU is surprisingly slow even at simple stuff like
decompressing an image, and the graphics card pretty much chokes with about
800 models with a couple hundred vertx each. You really have to work hard to
make even really simple scenes render fast. I was hoping I could just throw
simple graphics at it and have it eat easily, or at least close to as well
as my fairly old PC graphics card.
--
Darren New, San Diego CA, USA (PST)
"Coding without comments is like
driving without turn signals."
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New <dne### [at] san rr com> wrote:
> Actually, I'm rather surprised at how low-end the XBox hardware and graphics
> stuff is. The CPU is surprisingly slow even at simple stuff like
> decompressing an image, and the graphics card pretty much chokes with about
> 800 models with a couple hundred vertx each.
that's why in Assassin's Creed, while you have plenty of people around in the
streets, once you scale high buildings and can see plenty of the town, you only
see people (in LOD simpler models) in the immediate vicinities. Far away town
is empty. :)
But shouldn't image decoding be done by the GPU?
also, remember it's a 5 year old hardware already...
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/13/2011 19:53, nemesis wrote:
> Far away town is empty. :)
Yeah, that's true of Infamous on the PS3 too. (But, oddly, not of Uncharted
that I noticed, probably because Uncharted is a string of pearls instead of
a sandbox.) It's actually almost distracting.
As well as amusing, when you blow up the gas station, walk 2 blocks away,
and come back to a resurrected gas station.
> But shouldn't image decoding be done by the GPU?
Hard to say. Can you really decompress jpeg on the GPU?
> also, remember it's a 5 year old hardware already...
True. But still, it's hardware whose primary purpose is rendering graphics.
It's more like "Gee, every other game manages to have really sophisticated
graphics and stuff like geometry for window ledges instead of just being
painted on. I wonder what I'm doing that I can't get 1000 flat walls drawn."
--
Darren New, San Diego CA, USA (PST)
"Coding without comments is like
driving without turn signals."
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New <dne### [at] san rr com> wrote:
> Hard to say. Can you really decompress jpeg on the GPU?
I thought it'd be a standard operation in GPUs by now. It's the simplest and
most common operation with images.
> > also, remember it's a 5 year old hardware already...
>
> True. But still, it's hardware whose primary purpose is rendering graphics.
not quite. It used to be true in the 90's that consoles had faster graphics
capabilities than the PC because they used custom graphics hardware. Hence,
custom chips for graphics were developed for the PC and many years and heavy
games later, consoles now use that very same hardware. Except the hardware
never upgrades, while in the PC it does. (or better, you do it)
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
nemesis <nam### [at] gmail com> wrote:
> Darren New <dne### [at] san rr com> wrote:
> > Hard to say. Can you really decompress jpeg on the GPU?
> I thought it'd be a standard operation in GPUs by now. It's the simplest and
> most common operation with images.
Why would you even want to decompress a JPEG image with the GPU? After
all, the processors in the GPU are slower than the main CPU anyways.
(The reason why they are faster at drawing is extreme parallelism and
having hardware that is dedicated to drawing stuff.)
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New <dne### [at] san rr com> wrote:
> Actually, I'm rather surprised at how low-end the XBox hardware and graphics
> stuff is. The CPU is surprisingly slow even at simple stuff like
> decompressing an image, and the graphics card pretty much chokes with about
> 800 models with a couple hundred vertx each. You really have to work hard to
> make even really simple scenes render fast. I was hoping I could just throw
> simple graphics at it and have it eat easily, or at least close to as well
> as my fairly old PC graphics card.
What do you expect of a device that is cheaper than many cellphones?
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
> It's more like "Gee, every other game manages to have really
> sophisticated graphics and stuff like geometry for window ledges instead
> of just being painted on. I wonder what I'm doing that I can't get 1000
> flat walls drawn."
When you put it like that, I have to imagine it's something you're
doing, although I have no idea what it would be. Are you using Direct3D?
(It is a Microsoft product, after all.) Trying to minimize primitives?
- Slime
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/13/2011 7:28 PM, Darren New wrote:
> Actually, I'm rather surprised at how low-end the XBox hardware and
> graphics stuff is. The CPU is surprisingly slow even at simple stuff
> like decompressing an image, and the graphics card pretty much chokes
> with about 800 models with a couple hundred vertx each. You really have
> to work hard to make even really simple scenes render fast. I was hoping
> I could just throw simple graphics at it and have it eat easily, or at
> least close to as well as my fairly old PC graphics card.
>
Snort. What disappoints me is my hardware. Given that its specs make the
XBox look like complete shit, despite being a single core, and 5 years
out of date, but it runs like complete crap, and new version of Linux
would "improve" the situation enough to not make it still work like
crap. Why? Because they can't, just to use the obvious example of games,
make something that runs fine, if *slightly* less pretty, on an XBox,
run either as well, or even *at all* in some cases, on a better core,
with 4 times the memory, and a graphics card that.. well, you get the point.
Its like finding that the $20 radio on someone's bicycle has better
woofers than some $4000 system they just installed in your, slightly out
of date, Maserati (or equivalent)... Or better yet, discovering that
some poor shlubs 100 foot sail boat has room for more people on it than
your new 1,000 foot yacht. I mean, they develop these damn things "on" a
PC, of some sort, even if they test and tweak the final thing on the
console. How the hell do you do that and end up needing 2 cores, instead
of one, a graphics cards that is 2-3 times better, 4 times the memory,
etc., just to install the fracking thing, never mind run it?
This isn't a bad port (Force Unleashed being the example described), its
someone making a damn 747, and out of tissue paper no less, when they
only needed a damn Cessna.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/13/2011 23:40, Warp wrote:
> Why would you even want to decompress a JPEG image with the GPU?
That's a good point. ALtho I know the set-top boxes I've worked with all
have MPEG decompression hardware and H.264 decompression hardware, as do
most of the phone stuff I'm familiar with (which is very little). That's one
of the arguments about Ogg in HTML5 video tags vs H.264.
> (The reason why they are faster at drawing is extreme parallelism and
> having hardware that is dedicated to drawing stuff.)
I'm pretty sure the individual blocks of jpeg are independent (unlike PNG
for example). You ought to be able to de-convolve an entire jpeg in parallel
at least, once you de-huffman it.
--
Darren New, San Diego CA, USA (PST)
"Coding without comments is like
driving without turn signals."
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/13/2011 23:41, Slime wrote:
> > It's more like "Gee, every other game manages to have really
> > sophisticated graphics and stuff like geometry for window ledges instead
> > of just being painted on. I wonder what I'm doing that I can't get 1000
> > flat walls drawn."
>
> When you put it like that, I have to imagine it's something you're doing,
Yes, exactly. I was hoping i could just be naive and do a
Wii-quality-graphics game without learning all about how to do complex stuff.
> although I have no idea what it would be.
Apparently, the XBox is slow at restarting the graphics card. If I draw the
models as 600 individual models, I get about 20FPS.
Switching to instanced drawing (where you draw 100 copies of the same model
in one draw call by first passing 100 world matrixes to the graphics card
and then writing basically a shader with nested loops over world matrixes
and verticies), I get 130FPS.
So, basically, setting the texture and vertex buffers are really slow, even
tho they're all stored on the GPU without needing to transfer them from the
CPU other than updating pointers. I think I don't know how the GPU
interfaces to the CPU at the hardware level very well. If I were serious
about this, I'd dig up a book on GPU assembly language.
> Are you using Direct3D?
I'm using XNA, which is MS's .NET wrapping of Direct3D (at least on the xbox
- I don't think it uses D3D on the WinPhone).
Fun fact: XNA stands for "XNA is Not an Acronym."
> Trying to minimize primitives?
That was basically my complaint. It's a simple enough game I was hoping I
wouldn't have to do that. There's no sweeping vistas or city-size sandboxes
or even animated models or (at this point) even *moving* models. :-)
--
Darren New, San Diego CA, USA (PST)
"Coding without comments is like
driving without turn signals."
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/13/2011 23:40, Warp wrote:
> What do you expect of a device that is cheaper than many cellphones?
If I hadn't seen awesome and visually stunning games running on it, I'd be
less surprised. I'm not complaining about the xbox. I'm complaining that
even seemingly trivial scenes with no motion and Wii-quality graphics takes
knowing a whole lot about graphics to render at a reasonable rate.
I guess the subject line could be read in a way I hadn't intended, as a
criticism of the hardware itself rather than "I regret it's harder than I
expected." :-)
--
Darren New, San Diego CA, USA (PST)
"Coding without comments is like
driving without turn signals."
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/14/2011 2:23, Patrick Elliott wrote:
> Because they can't, just to use the obvious example of games, make something
> that runs fine,
I can't even figure out who "they" is or what "something" it is that doesn't
run fine.
--
Darren New, San Diego CA, USA (PST)
"Coding without comments is like
driving without turn signals."
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New escreveu:
> On 4/13/2011 23:41, Slime wrote:
>> Are you using Direct3D?
>
> I'm using XNA, which is MS's .NET wrapping of Direct3D (at least on the
> xbox - I don't think it uses D3D on the WinPhone).
a-ha! Are you sure 360 devs aren't actually coding in assembly? ;)
> Fun fact: XNA stands for "XNA is Not an Acronym."
I thought it'd mean something like eXtreme Nondisclosure Agreement. ;)
--
a game sig: http://tinyurl.com/d3rxz9
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New <dne### [at] san rr com> wrote:
> On 4/13/2011 23:40, Warp wrote:
> > What do you expect of a device that is cheaper than many cellphones?
> If I hadn't seen awesome and visually stunning games running on it, I'd be
> less surprised. I'm not complaining about the xbox. I'm complaining that
> even seemingly trivial scenes with no motion and Wii-quality graphics takes
> knowing a whole lot about graphics to render at a reasonable rate.
I'm wondering if part of the cause isn't XNA and C#. In theory it shouldn't,
but who knows about these things. After all, all those beautiful ginormous
games are certainly not done with XNA.
--
- Warp
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/14/2011 9:58, nemesis wrote:
> Darren New escreveu:
>> On 4/13/2011 23:41, Slime wrote:
>>> Are you using Direct3D?
>>
>> I'm using XNA, which is MS's .NET wrapping of Direct3D (at least on the
>> xbox - I don't think it uses D3D on the WinPhone).
>
> a-ha! Are you sure 360 devs aren't actually coding in assembly? ;)
Commercial developers use C++. If you want to release a game without MS
having to approve it first, you use XNA which (a) is way easier and (b)
locks you into a set of libraries that keeps you from (for example) stealing
user data, DDOSing whitehouse.gov, erasing other peoples' saved games, or
sending their music over the internet to your server.
>> Fun fact: XNA stands for "XNA is Not an Acronym."
> I thought it'd mean something like eXtreme Nondisclosure Agreement. ;)
I thought it was funny they out GNU'ed GNU, acronym-wise.
--
Darren New, San Diego CA, USA (PST)
"Coding without comments is like
driving without turn signals."
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/14/2011 10:06, Warp wrote:
> I'm wondering if part of the cause isn't XNA and C#. In theory it shouldn't,
> but who knows about these things. After all, all those beautiful ginormous
> games are certainly not done with XNA.
I think that while XNA slows some things down, the graphics probably isn't
one of them. You have to be a little careful with memory management, but
there's enough value types that you can usually go without any per-frame
heap allocations if you're a little careful. The JIT optimizations aren't
great; certainly nothing like as good as on the PC. I don't know how fast
the CPU is, but in doing something like loading and decompressing PNG files,
my 3GHz 64-bit desktop machine runs the same code about 5x to 10x as fast.
The threading is a little wonky, in that threads won't move between cores
for example - you start a thread on a specific core and that's where it runs
(or starves, if you're not careful). I suspect the .NET framework itself
winds up taking up a fair amount of valuable memory if you're going to do a
serious game where half a gig is limiting. It doesn't unload code once
you've loaded it, so if you have a DLL for just posting your high score,
once you invoke that, it's going to take up memory while you play the second
round or whatever. (The actual graphics resources like fonts and images and
sounds can go, tho.)
Note that on Windows, where you can use stuff that's *not* part of XNA, a
lot of these restrictions disappear, too. They're just on the xbox for
sandboxing, basically.
But the graphics library itself makes you allocate vertex buffers and index
buffers, load compiled shaders as byte arrays, etc. It manages all kinds of
formats for the rendering targets and such, uses the DirectX libraries to do
a lot of the stuff like parsing .X and .FX files and compressing textures
and such. So all the underlying stuff is translated pretty much to DX calls
as far as I can tell. You have to deal with the graphics hardware at the
graphics primitives level. While there's a lot of simplification going on in
the library APIs, I don't think there's a lot that's time-consuming that you
wind up doing in C# itself.
Now if you did something even more sophisticated, like real physics or
per-triangle collision detection on a significantly-sized world, you'd
probably start seeing more limitations than I have. But in theory the JIT
should be able to turn that into code not too far off from C++, I would
think. Certainly no worse than any other C# code doing heavy math like that.
But the library calls still have you allocating a vertex buffer with a
declaration of which offsets within each vertex bind to which register in
the shaders, then filling it in a separate write-only call, assigning the
textures, then invoking the shader. And (except on the WinPhone) you can
write your own shaders in a separate C-like language (HLSL) which may very
well be what folks use to write DirectX shaders in non-XNA langauges too.
--
Darren New, San Diego CA, USA (PST)
"Coding without comments is like
driving without turn signals."
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
have you looked into trying to use a ready-made engine instead of
rolling your own without extensive knowledge and optimizations? Try
some demo version of Unreal or something, though I don't know if they're
compatible with XNA.
There must be a reason why game engines are highly sought and valuable
assets.
--
a game sig: http://tinyurl.com/d3rxz9
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/14/2011 11:15, nemesis wrote:
> have you looked into trying to use a ready-made engine instead of rolling
> your own without extensive knowledge and optimizations? Try some demo
> version of Unreal or something, though I don't know if they're compatible
> with XNA.
They're not compatible with XNA, because XNA is *only* C# because it is
sandboxed. There are a variety of small game engines for XNA that I haven't
really looked into. (Partly because they actually cost money, and while the
amounts they cost are trivial (like $100 is not uncommon), it's more than
I'm actually likely to make on the game. ;-) (Partly because I'm doing this
more to learn than I am to write games per se.)
I've read the Unreal documentation. Looks very cool. Way beyond what's
useful for a one-player simple game.
I'm thinking of trying out some of the Bryce stuff if I do a game after this
and need some animations that are too messy to do in raw code. (So far,
opening doors and stuff I have managed to do with math.)
> There must be a reason why game engines are highly sought and valuable assets.
No doubt. One thing Unreal does that from a programming point of view seems
to be really helpful is that it turns the event loop inside out. So you can
do something like "when you bump the wall, play the rub-head animation. Then
get back to me when that finishes." That's a whole ton of bookkeeping that
you have to do manually if your base library is "update all your objects for
this frame" followed by "draw all your objects for this frame" 60x a second.
It also has logic for path finding and stuff like that, at least in the
version I read about a couple years ago.
And of course all the level building and art sorts of things.
--
Darren New, San Diego CA, USA (PST)
"Coding without comments is like
driving without turn signals."
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/14/2011 9:16 AM, Darren New wrote:
> On 4/14/2011 2:23, Patrick Elliott wrote:
>> Because they can't, just to use the obvious example of games, make
>> something
>> that runs fine,
>
> I can't even figure out who "they" is or what "something" it is that
> doesn't run fine.
>
Uh.. They = developers, something = anything using the damn graphics
card, in this case games. Yeah, I know, the "they" might be different
people porting the things to a PC, from the console, but again.. You
don't "write" games *on* consoles, so how one can run like crap on the
development platform, but not on the end device... I just don't get it.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/14/2011 16:23, Patrick Elliott wrote:
> Uh.. They = developers, something = anything using the damn graphics card,
> in this case games.
So you're complaining that games under Linux on the PC don't run as well as
games on the xbox? Or games under Windows don't run as well as on the xbox?
If they're expecting to release it on the xbox, and then you want it to run
as well under Linux, well, that's a problem. Especially if one targets
directx directly instead of with some thin layer that can be replaced.
I am not even sure how one does 3D graphics under X, honestly. Last I looked
at the low-level stuff, that wasn't really supported.
--
Darren New, San Diego CA, USA (PST)
"Coding without comments is like
driving without turn signals."
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On Thu, 14 Apr 2011 20:17:49 -0700, Darren New wrote:
> I am not even sure how one does 3D graphics under X, honestly. Last I
> looked at the low-level stuff, that wasn't really supported.
Mostly implemented using OpenGL or Mesa - outside of X.
Jim
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 14/04/2011 17:03, Darren New wrote:
> I'm pretty sure the individual blocks of jpeg are independent (unlike
> PNG for example). You ought to be able to de-convolve an entire jpeg in
> parallel at least, once you de-huffman it.
I believe they are. Note, however, that "progressive JPEG" exists.
That's where the data is reordered so that you can generate a low-res
preview quickly, after only downloading the first few KB of the file. I
don't know how that affects the ability to process the thing in
parallel. (I'm not sure whether the rearrangement is a simple
permutation, or whether it depends on the data. The former shouldn't
impede parallel processing. The latter would.)
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/14/2011 8:17 PM, Darren New wrote:
> On 4/14/2011 16:23, Patrick Elliott wrote:
>> Uh.. They = developers, something = anything using the damn graphics
>> card,
>> in this case games.
>
> So you're complaining that games under Linux on the PC don't run as well
> as games on the xbox? Or games under Windows don't run as well as on the
> xbox?
>
Sigh.. Lets try this again.
1. Development platform - PC with some flavor of Windows.
2. Destination platform - xBox, running a stripped down form of Windows.
3. Port platform - The same Windows used in #1.
So.. What the hell happens between 2 and 3, which makes it run like
shit, and require 2 cores, more memory, etc.?
The issue has nothing to do with Linux, which is a whole different
problem, mostly resulting from the fact that OpenGL tends to run
"behind" DirectX, when it comes to some things, due to the way hardware
developers do their job (or, more often are paid to not do so).
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/15/2011 20:15, Patrick Elliott wrote:
> So.. What the hell happens between 2 and 3, which makes it run like shit,
> and require 2 cores, more memory, etc.?
Oh. No idea. So far everything *I* have written runs way better on the PC
than the XBox.
> The issue has nothing to do with Linux,
Oh. Because you mentions Linux, which was confusing.
--
Darren New, San Diego CA, USA (PST)
"Coding without comments is like
driving without turn signals."
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Le 2011/04/15 23:15, Patrick Elliott a écrit :
> On 4/14/2011 8:17 PM, Darren New wrote:
>> On 4/14/2011 16:23, Patrick Elliott wrote:
>>> Uh.. They = developers, something = anything using the damn graphics
>>> card,
>>> in this case games.
>>
>> So you're complaining that games under Linux on the PC don't run as well
>> as games on the xbox? Or games under Windows don't run as well as on the
>> xbox?
>>
> Sigh.. Lets try this again.
>
> 1. Development platform - PC with some flavor of Windows.
> 2. Destination platform - xBox, running a stripped down form of Windows.
> 3. Port platform - The same Windows used in #1.
>
> So.. What the hell happens between 2 and 3, which makes it run like
> shit, and require 2 cores, more memory, etc.?
>
> The issue has nothing to do with Linux, which is a whole different
> problem, mostly resulting from the fact that OpenGL tends to run
> "behind" DirectX, when it comes to some things, due to the way hardware
> developers do their job (or, more often are paid to not do so).
During 1, the devlopment is aimed at the console.
Between 1 and 2, there is LOTS of optimistion specificaly aimed at the
xbox. Also, the console resolution is usualy somewhat low. When the xbox
was new, it was mostly connected to normal resolution TV sets...
When going to 3, the user wants greatly beter graphics. You want 32 bits
colours, at least 1600x1200 resolution, over 30 fps, greater vewing
distances, perfect anti aliasing,...
Alain
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/16/2011 12:16 PM, Alain wrote:
> Le 2011/04/15 23:15, Patrick Elliott a écrit :
>> On 4/14/2011 8:17 PM, Darren New wrote:
>>> On 4/14/2011 16:23, Patrick Elliott wrote:
>>>> Uh.. They = developers, something = anything using the damn graphics
>>>> card,
>>>> in this case games.
>>>
>>> So you're complaining that games under Linux on the PC don't run as well
>>> as games on the xbox? Or games under Windows don't run as well as on the
>>> xbox?
>>>
>> Sigh.. Lets try this again.
>>
>> 1. Development platform - PC with some flavor of Windows.
>> 2. Destination platform - xBox, running a stripped down form of Windows.
>> 3. Port platform - The same Windows used in #1.
>>
>> So.. What the hell happens between 2 and 3, which makes it run like
>> shit, and require 2 cores, more memory, etc.?
>>
>> The issue has nothing to do with Linux, which is a whole different
>> problem, mostly resulting from the fact that OpenGL tends to run
>> "behind" DirectX, when it comes to some things, due to the way hardware
>> developers do their job (or, more often are paid to not do so).
>
> During 1, the devlopment is aimed at the console.
>
> Between 1 and 2, there is LOTS of optimistion specificaly aimed at the
> xbox. Also, the console resolution is usualy somewhat low. When the xbox
> was new, it was mostly connected to normal resolution TV sets...
>
> When going to 3, the user wants greatly beter graphics. You want 32 bits
> colours, at least 1600x1200 resolution, over 30 fps, greater vewing
> distances, perfect anti aliasing,...
>
>
> Alain
No, I want the damn thing to bloody run. Given that I can't even "lower"
the specifications of the game so it matches the performance it had on
the console...
And, seriously, some of the BS I see is like the case with Bioshock 2,
where their "optimization" was to cram flash animations into the
"vending machine" system, and run those on a separate thread, something
that probably helped them with all the "improvements" in graphics, but
which effectively made the "main" game run well, the vendors run like
hell, even if you deleted all the damn flash files (or renamed them, so
it couldn't find and load them), but at least made it possible to play,
and the game completely unplayable *if* you had a single core, and
didn't realize that nuking the flash files would fix it.
Seriously? This was necessary, or even helpful? lol
No, often the problem is just that they "re-optimize" the stuff for the
PC to the point where it runs like shit even of the hardware that
supposedly "supports" all the still they tweaked.
Hmm. Another example. Assassin's Creed. Their "recommendation" is for a
higher speed than I have, but not two cores. The *only* problems I ran
into was some "slight" lag during combat, which made some of the fights
a bit.. annoying. But, like Bioshock II, which *does* say you should be
using duel cores for best operation, it isn't strictly necessary, even
with most of the graphics tuned a bit above "default". So.. Why, again,
is Force Unleashed such crap? Because, according to people that did get
it installed, it runs like crap no matter what card you have, how much
memory is installed, or how many cores, or what settings you use. They
simply screwed up the port to the PC so badly that no sane person would
play it, without *way* over building the machine they put it on, never
mind trying it with the "recommended" hardware.
This is, imho, completely ridiculous.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/16/2011 16:59, Patrick Elliott wrote:
> No, I want the damn thing to bloody run.
Here's what I think is happening.
Game designers like to target the consoles, not because they're particularly
good, but because they're only broken in one way.
Given that some 85% of BSODs are video drivers crashing, it's clear that
nobody really builds video drivers that work 100%. OK, so maybe your PC
works 98% of all its functionality perfectly. Maybe the xbox works 95% of
all its functionality perfectly.
So you write the game, you test it out on the xbox, and you don't do the
stuff that doesn't work on the xbox. 5% of your rendering code consists of
working around bugs in the xbox hardware and software.
Now you have to port it to the PC. But not just Patrick's PC. Everyone's PC.
Maybe 20 different graphics cards/chips/OS version combinations. Each of
which have only 2% instead of 5% of the stuff not working. So you wind up
with 95% of the stuff you want to do on the xbox working, and 60% of what
you want to do on the PC working. Sure, you can compensate on the PC for
each broken thing, working around each bug, rewriting that code 20 times,
testing against the versions you can get your hands on. Or you can release a
game that people will buy anyway and just turn off any optimization that
doesn't work on every card.
Remember that every game that says "make sure you have the latest video
drivers" is really saying "we're relying on something working that was
broken in the first N official versions of the driver software."
It's equivalent to saying "wow, google released this web site that works
great under Chrome, but it looks awful under IE6. How unprofessional is
that?" And that's exactly where we'd be all the time if people updated
their web browsers as often as they replaced their video cards.
--
Darren New, San Diego CA, USA (PST)
"Coding without comments is like
driving without turn signals."
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 4/17/2011 1:13 PM, Darren New wrote:
> On 4/16/2011 16:59, Patrick Elliott wrote:
>> No, I want the damn thing to bloody run.
>
> Here's what I think is happening.
>
> Game designers like to target the consoles, not because they're
> particularly good, but because they're only broken in one way.
>
> Given that some 85% of BSODs are video drivers crashing, it's clear that
> nobody really builds video drivers that work 100%. OK, so maybe your PC
> works 98% of all its functionality perfectly. Maybe the xbox works 95%
> of all its functionality perfectly.
>
> So you write the game, you test it out on the xbox, and you don't do the
> stuff that doesn't work on the xbox. 5% of your rendering code consists
> of working around bugs in the xbox hardware and software.
>
> Now you have to port it to the PC. But not just Patrick's PC. Everyone's
> PC. Maybe 20 different graphics cards/chips/OS version combinations.
> Each of which have only 2% instead of 5% of the stuff not working. So
> you wind up with 95% of the stuff you want to do on the xbox working,
> and 60% of what you want to do on the PC working. Sure, you can
> compensate on the PC for each broken thing, working around each bug,
> rewriting that code 20 times, testing against the versions you can get
> your hands on. Or you can release a game that people will buy anyway and
> just turn off any optimization that doesn't work on every card.
>
In my experience, the assumption is that if its supposed to do it, they
assume it will, and hope the next driver doesn't break it (which can
happen). Sometimes they *may* include the feature, but off, waiting for
the time it will go live, but not often. So, there are things that
"known" stages of card development will always, generally, do right,
with minor exceptions, recommendations on the box, telling you what the
one they developed it for was, usually a copy of the driver that they
had at the time *with the game*, and dozens of forums on the net based
around, "I have this card, which is better than the other one, but
everything looks fuzzy!", problems. So, no, that isn't what is going on
here, from what I can tell.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|
 |