How/Who create the GameObjects?

Started by
40 comments, last by Khatharr 11 years, 5 months ago
fleblanc: "Modern hardware can handle RGBA data in so many different formats, that you are basically free to pick your preferred method" - Yes, but RGBA requires shift c>>8 and &0xFFFFFF. Please respond to this.
Advertisement
Who gives a shit? That's my response. Any code where you might conceivably have to shift and & is not going to be performance critical, and if it is performance critical, and you are noticeably slowed down by a shift and bitwise &, then you have seriously fouled up your design somewhere and you really ought to go back to the design table rather than worrying about pixel formats. Why are you worried about the performance of shifting and bit-wise operations anyway? Is this still 1996? If you need to switch something around, just swizzle in your shader and stop bringing up old shit and thinking it's a valid argument in the modern world.
"Why are you worried about the performance of shifting and bit-wise operations anyway?" - Because it occurs milions of times per second in game/graphics programming. For example, one 1024x768x32 screen is 786,432 pixels which translates to 3,145,728 bytes. Multiply this by FPS.

"Why are you worried about the performance of shifting and bit-wise operations anyway?" - Because it occurs milions of times per second in game/graphics programming. For example, one 1024x768x32 screen is 786,432 pixels which translates to 3,145,728 bytes. Multiply this by FPS.


are you writing software renderers?

Stefano Casillo
TWITTER: [twitter]KunosStefano[/twitter]
AssettoCorsa - netKar PRO - Kunos Simulazioni

Are you sure about that? Which driver team (NVidia, ATI, Intel) are you a member of, that you know what the driver is doing millions of times per second?

Like I said, is this still 1996? These days, performance critical code runs on the GPU, and the optimization landscape for modern GPUs is so much more complicated than "We must optimize out bitshifting and AND for performance" that it's actually hilarious that you still think the way you do.
"are you writing software renderers?" - Yes. Pure software rendering using only CPU instructions.

"Who gives a shit? That's my response" - You can't respond to my claim that AA.RR.GG.BB is the best. Your response is basically, "Who cares?". RGBA requires additional instructions.

"are you writing software renderers?" - Yes. Pure software rendering using only CPU instructions.



are you suggesting everybody should write software renderers?

Stefano Casillo
TWITTER: [twitter]KunosStefano[/twitter]
AssettoCorsa - netKar PRO - Kunos Simulazioni

"are you suggesting everybody should write software renderers?" - No, just explaining my perspective. He asked, I answered. Why are we way off subject here?

"are you suggesting everybody should write software renderers?" - No, just explaining my perspective. He asked, I answered. Why are we way off subject here?


but do you realize your "perspective" is based on a tech that nobody has been using for over 15 years? Current generation programmer just DON'T CARE about these things because they are hidden far far away.. and because they are probably trying to solve much more interesting problems.
Seriously, you should get out more and try to learn something else other than those 2 tricks you've learned 15 years ago. You have no idea how much software development has changed, and trust me, it's all good stuff.

Conservative programmer, is a contradiction in terms.

Stefano Casillo
TWITTER: [twitter]KunosStefano[/twitter]
AssettoCorsa - netKar PRO - Kunos Simulazioni

uart777: I learned a hard lesson a few years ago: The person playing your game doesn't give two shits about whether you wrote the code in ASM, C, C++, Fortran, C#, Visual Basic, LOLCAT, java, javascript, Malbolge, etc. All they care about is whether or not the game works and whether or not it's fun. In 2012 (going on 2013), you have LOADS of language and platform choices to choose from to make a game. Whatever language/platform you choose, your end user won't care because it doesn't matter. If it DID matter, then the language used would be prominently featured on the box art. Today, we've got multicore processors which run around 3.5Ghz , gigs of ram, hard drives with terabytes of space, and graphics cards supporting hardware so beefy that they're practically super computers. We can afford to be a bit more lax with our bits. It's a waste of programmer time to worry about how bits are laid on the wire when there are platforms and technologies which have already figured it out.

Since the programming language doesn't matter much anymore, we are free to be a bit more picky about what language we pick. Here are my principles:
-How robust/flexible is the language?
-How easy is it to learn?
-How easy is it to maintain the code after its writen? (I'm looking at you, x86 ASM!)
-How much boiler plate code needs to be writen to get a feature rich game running?
-How well is the language specifications and API documented?
-How much industry support is there for the language?
-How portable is the language to other hardware and software platforms?
-What is my (or my teams) language proficencies and background?
-How much of an existing code base (libraries) do I have?

If(making games)
{
If you're doing it right, you're sweating over high level design decisions and choosing the best algorithms for the job you're trying to do. Doing this well is much more valuable than sweating over the bit order of a pixel residing in memory.
}

If(Writing hardware device drivers)
{
Okay, sweat over the most efficient ordering of bits for your hardware device. I assume you're working for nVidia or ATI and working very closely with the hardware engineers to maximize driver performance so your end users (API & game devs) don't have to.
}

This topic is closed to new replies.

Advertisement