How/Who create the GameObjects?
#22 Members - Reputation: 1863
Posted 25 October 2012 - 10:20 AM
#23 Members - Reputation: -126
Posted 25 October 2012 - 10:29 AM
#24 Members - Reputation: 1309
Posted 25 October 2012 - 10:30 AM
"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?
#25 Members - Reputation: 1863
Posted 25 October 2012 - 10:32 AM
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.
#26 Members - Reputation: -126
Posted 25 October 2012 - 10:38 AM
"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.
Edited by uart777, 25 October 2012 - 10:40 AM.
#29 Members - Reputation: 1309
Posted 25 October 2012 - 10:54 AM
"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.
Edited by kunos, 25 October 2012 - 10:56 AM.
#30 Members - Reputation: 1054
Posted 25 October 2012 - 11:27 AM
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.
}
Hobby: Game Developer
Currently employed as: Sr. Sharepoint Developer in Afghanistan
#32 Members - Reputation: -126
Posted 25 October 2012 - 04:54 PM
slayemin: Very true. We must respect everyone who makes a good game/program in any language, even Javascript. "Since the programming language doesn't matter much anymore" - Thanks for sharing your opinion
Icebone1000: Hope you got your question answered. Sorry for changing the subject :|
Edited by uart777, 25 October 2012 - 05:13 PM.
#33 Crossbones+ - Reputation: 5186
Posted 25 October 2012 - 07:20 PM
I’ll respond to it."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.
My engine runs on DirectX 9, DirectX 10, DirectX 11, OpenGL 3.2+, and OpenGL ES 2.0.
DirectX expects ARGB while OpenGL (and derivatives) expect RGBA.
In the grand scheme of things, those extra instructions are going to happen no matter what. If I use ARGB then I need extra shifts when I make a texture in OpenGL.
If I use RGBA then I need extra shifts when I make a texture in DirectX.
There is no right or wrong solution.
There is no “correct” way to go. If you plan on supporting both DirectX and OpenGL, you are going to lose on one side or the other.
If you plan on only supporting DirectX, ARGB is the correct solution.
If you plan on only supporting OpenGL, RGBA is the correct solution.
But neither ARGB nor RGBA is the universally correct solution. Stop saying ARGB is “the way to go”.
L. Spiro
Edited by L. Spiro, 25 October 2012 - 07:20 PM.
I spent most of my life learning the courage it takes to go out and get what I want. Now that I have it, I am not sure exactly what it is that I want. - L. Spiro 2013
L. Spiro Engine: http://lspiroengine.com
L. Spiro Engine Forums: http://lspiroengine.com/forums
#34 Members - Reputation: 406
Posted 26 October 2012 - 05:55 PM
Ppl that draw and program are all faggots... Peace ¦D
I get most of the replies...but nox_pp post is really confusing to me, I dont get it..
Is he saying I should have not a common base? But them, how the design of the "engine" would be like..I really dont get it, and since he got 6 thumbs up, Im interested..
My first understanding of why my design is bad was that I shouldnt be so restrictive about the creation of the stuff, making my class less useful (based mostly on spiro post)
Then nox_pp says basically I shouldnt have a central management of game objects at all..i guess..??
"If you've got too many derived GameObjects for this to be feasible, that's merely an indicator that something else is wrong."
But of course it will have many derived GOs, that was the the idea since the beginning: give behavior to game objects (override Update()), give game objects to Game, Game will make them run/execute and interact..
Then uglybdavis raped some Unity design choices (o_o I see what you doing there!), but I also dont see the benefits of deriving components and adding to game objects over deriving game objects, looks like its just delegating it deeper in the hierarchy (if I get his idea correctly).
Thanks for the responses.
#35 Members - Reputation: -126
Posted 29 October 2012 - 02:11 AM
* "ASM IS HARD" - It's getting easier. Modern Assemblers have POWERFUL macro features to develop EASY CUSTOM syntaxes - IF, ELSE, LOOP, CLASS, etc - that are 100% PORTABLE to ANY CPU or OS. Honestly, C/C++/Java are easier overall and you should continue to use them. I'm only defending my use of ASM.
* "ASM IS NOT PORTABLE" - FALSE. Modern Assemblers are 100% PORTABLE and can generate custom code for absolutely ANY CPU or OS using special macros. Microsoft compilers produce executables that are ONLY FOR X86/WINDOWS OSs. Microsoft will NEVER support other OSs like Android, IPOD, Linux or Macintosh. We're working on Java currently. We have macros that output JVM instructions for Java-enabled CPUs, ARM, Universal ASM, etc.
* "ASM programmers are faggots" - You don't understand how ASM programmers get mistreated for being different and rejected from an entire community that used to accept us. I used to get along excellent with C++ programmers and would share inline graphics code... until the newer C++ programmers started calling me "stupid", etc. Now, new C++ programmers describe us as dumb primitive humans because they heard this from people who pretend to know ASM but don't understand its uses in the world today. In some cases, we're not allowed to post, defend ourselves or respond to FALSE statements about ASM. Is this fair? Please try to see both sides of the picture.
* "You have no argument to use ASM" - I'VE GOT A LONG LIST OF REASONS "WHY I USE ASM" BUT ASM PROGRAMMERS CAN'T DEFEND THEMSELVES AGAINST THE LIES AND MISCONCEPTIONS THAT YOU TELL BEGINNERS. YOU KNOW NOTHING ABOUT THE EVOLVED HL ASSEMBLER SYNTAXES THAT WE HAVE TODAY.
I WILL NOT RETURN HERE.
#36 Staff - Reputation: 8926
Posted 29 October 2012 - 02:53 AM
You're perfectly welcome to respond to anything you like, the only thing people have been objecting to is the fact that you continually raise off-topic points. You decided to start talking about assembly in a completely unrelated topic, and when you were challenged part of your response was to randomly show some art, of all things.
Stop being such a drama queen -- you can respond to anything you like -- in return however you will have to respect the fact that other users may also respond to you, and will call you on it when you make false claims of your own such as insisting that only one pixel format is "correct". You should also learn to recognise a joke or sarcasm and not post lengthy serious responses to them, which you've done more than once now.
But you know what... this is all still off topic, and it isn't helping the original poster -- who isn't currently interested in learning assembly -- or anyone else. You can respond to whatever points you like, but start a new topic rather than dragging this one any further off course.
Any further responses to this topic must be on-point responses that are genuinely intended to help the original poster. Anyone wanting to continue a discussion of assembly should start a new topic -- you may post a link to it if you like.
- Jason Astle-Adams.
From my blog: 20 ways to advertise your game | What next? Intermediate to advanced C++
How to make games WITHOUT programming | 4 reasons you aren't a successful indie developer
#38 Members - Reputation: 482
Posted 13 November 2012 - 10:43 PM
Then uglybdavis raped some Unity design choices (o_o I see what you doing there!), but I also dont see the benefits of deriving components and adding to game objects over deriving game objects, looks like its just delegating it deeper in the hierarchy (if I get his idea correctly).
You should read this and search google for "composition vs inheritance".
Edited by Kamikaze15, 13 November 2012 - 10:47 PM.






