Jump to content
  • Advertisement
  • entries
    383
  • comments
    1075
  • views
    354061

Question Time

Sign in to follow this  
Trapper Zoid

249 views

I've been compiling a list of questions, most of which I've found answers to already, but some of these I'd like to ask the general journal reading community for answers or their opinions. Given I've got a few of these I can't be bothered splitting them up into individual forum posts so I'll ask them all here. I don't mind if I only get answers to individual questions - answering any of this will be great!


Memory Allocation: Potential Bottleneck?
I know it's bad practice to worry about trivial optimisation details too early, but this one affects the design of the architecture somewhat. I've been wondering about allocating and deallocating memory for objects within my game engine. I don't know whether I should go the easy route, not do anything fancy, and just use the standard C++ new and delete allocators for each object when they are required. Or whether I should keep "memory pools", allocated as a large block of multiple objects - thus only doing one allocate for many objects and keeping them in the pool to be reused on deletion.

Is this "memory pool" approach sensible, or am I going overboard on memory allocation techniques? What do you use in your applications?


Poll on Polls!
There's been several occasions where I want to ask a general "which of these do you prefer?" question in my journal. Often I don't mind if this question runs over the course of a fortnight but the question becomes buried once I post another entry. While I could probably hack something together within my own journal that would suffice for my needs, I was thinking that it would be really nifty if every GDNet journal could have its own poll. I think it would be both a useful and fun feature, whether the polls were used for making design decisions on a game or just asking people to vote for their favourite type of pie.

Of course I don't know how hard it would be to implement this, but what do you think?


What exactly is XNA?
These days I game both on my PC and my Gamecube (which I think complement each other quite well). For the next generation of consoles slowly coming into play I almost certainly will be buying a Wii (I'm a big fan of Nintendo's first party titles), however this time round I'm strongly considering getting another console as I slowly move away from the cutting edge of PC gaming (I am getting fed up with all the compatibility issues, the whole upgrade cycle, patching problems and asinine anti-piracy measures that hurt legit gamers more than pirates. These days I prefer my back catalog of PC games and smaller freeware or indie games.) My plan was to wait until the Xbox 360 and PS3 are firmly established to make an informed choice.

However this XNA Game Studio thing that I've been reading about in the forums has intrigued me. Deep down I'd love to make hobby games for a console in the future, as I really like their control setup and I'd adore the opportunity to aim for multiplayer games for a single machine. But I'm not sure exactly what this XNA Game Studio involves as I don't know much about console development. Is it in essence similar to standard PC development, except the system emulated an Xbox 360 on your PC? What background knowledge would you need to use it? And is it a viable platform for indie development, or just for hobbyists?

Sorry that this one is a bit vague, but I'm fairly clueless on what this is except for the brief snippets I've read here in the last couple of weeks. Either way, with Sony trying to do everything they can to dissuade me from buying the PS3 I'm now leaning towards the Xbox 360 as a potential second console.


Books Again!
C'mon, I know some of you can recommend a book or two to buy! There must be someething that you find indispensible. I'd like anything that might be useful for programming (not necessarily just games, although game specific books are great too), software engineering and design, art and drawing, or anything else you think is helpful or interesting.


That's it for now. I'll post some more once I build up another list.
Sign in to follow this  


11 Comments


Recommended Comments

Ah, thank you for giving me a chance to plug.

What is XNA? Luckily I just made an entry on that

Memory? Use C#, haha just kidding, that was a preemptive jab. Ehm I think constantly allocating and deallocating memory in a main loop is no good but not a problem otherwise. As for simply using new and delete I think that will certainly gurantee that you develop a leak in memory as inevitably, situations will crop up where you are not releasing resources properly.

So the thing to do would probably be to use a memory manager or some other sillyness C++ likes to hassle you with (cause its a whiny baby, more mature languages can handle themselves better :p). if I were Zahlman or snk_kid or something, Id say use something like std_balsmart_index_finger or boost::pta with the respective terminology ofcourse being slightly altered and properly explained.

Share this comment


Link to comment

XNA is a subset of the .NET framework (much like the Compact .NET Framework for mobile devices). As part of the CRE (Common Runtime Environment) which is critical to .NET, XNA allows for code to be made that can run on both the x86 architecture and the XBox360's architecture (which unlike the original XBox is not x86, it's part of IBM's Power Architecture codenamed Xeon).

The most notable game engine to adjust itself to the requirements of XNA/.NET is the Torque engine, but it's hardly the sole possibility. There are even some that are free.

It's an interesting prospect, particularly their leveraging of the XBLA pipe. It's conceivable there will be many people taking advantage of this. Let's hope that the indie-games section of XBLA won't become a dumping ground for highschool shovelware. :)


One fun book I've used is 3d Primer for Game Programmers. I'm not sure how it measures up to other tomes, but it suited me fine. You know it's good when they at least attempt to inject some humour into the topic. :)

I suggested a couple other books in your original thread. Not sure if those were helpful to you or not.

Other books include the OpenGL "red book". I'd imagine there are many programmers that have this on their shelf. The previous versions are typically cycled into a free online publication. Check that out here. Also I found NeHe's tutorials (hosted on gamedev.net) to be absolutely awesome.

Share this comment


Link to comment
Code Complete by Steve McConnell is a must-have for software developers. It's chock-full of dev advice and references to the Pontiac Aztek.

Share this comment


Link to comment
Oooh, a lot of useful posts here. Thanks everyone! I'll reply to each one in turn, so due to the quirky commenting system my replies will be sprinkled about the place. Sorry about any confusion!

Quote:
Original post by Daerax
What is XNA? Luckily I just made an entry on that
[/quote]
Thanks. I'm still not sure exactly what Microsoft is going to include with their framework when they say they will provide libraries intended for game development, but it certainly sounds like something to consider in the future.

Quote:

Memory? Use C#, haha just kidding, that was a preemptive jab. Ehm I think constantly allocating and deallocating memory in a main loop is no good but not a problem otherwise. As for simply using new and delete I think that will certainly gurantee that you develop a leak in memory as inevitably, situations will crop up where you are not releasing resources properly.

Yup, I know this can be a real problem. I usually am very strict about keeping memory under tabs, but I'm sure there's a few exceptional cases (such as with exceptions) where I forget to free something I should have. I probably should use some sort of memory management system just to be on the safe side.

And I'd prefer to keep the language wars out of my particular journal, thanks [grin]. Although the way my engine is shaping up, I'm thinking C++ is probably not the easiest choice of language to pick. However I've decided it's the one to master right now (partly because it's popular in my research area as well as game dev) and I'm sure once I've got C++ down pat I can shift to very similar languages like C# in a heartbeat.

Share this comment


Link to comment
Quote:
Original post by covert c
It's an interesting prospect, particularly their leveraging of the XBLA pipe. It's conceivable there will be many people taking advantage of this. Let's hope that the indie-games section of XBLA won't become a dumping ground for highschool shovelware. :)

I don't know much about how XBLA works, but I hope there's some sort of quality control to sort the wheat from the chaff. I admit I'm pretty clueless about the whole Xbox online thing, not having both an Xbox or a half-decent home internet connection. But the idea of making console games with relative ease seems pretty darn inticing to me.

And thanks for the book suggestions! I apologise that I didn't see your post in the previous entry; I thought that it had been ignored. I'll chase up your suggestions, look at a few reviews and see if any seem particularly tempting.

Share this comment


Link to comment
Quote:
Original post by ArchWizard
Code Complete by Steve McConnell is a must-have for software developers. It's chock-full of dev advice and references to the Pontiac Aztek.

Thanks, I should read through that again (I can only dimly remember the references to the Aztek [smile]). I think someone must have suggested that book to me before as I picked it up a year ago. Given I'm going to start coding with a vengence soon I should brush up on the fine points of good coding practices.

Share this comment


Link to comment
Quote:
Original post by Programmer16
I've always thought that polls in the journal would be really cool.

Good to know I'm not completely insane with that suggestion. I might politely ask that question separately in the GDNet Suggestions thread.

Share this comment


Link to comment
Quote:
Original post by Trapper Zoid
Quote:
Original post by ArchWizard
Code Complete by Steve McConnell is a must-have for software developers. It's chock-full of dev advice and references to the Pontiac Aztek.

Thanks, I should read through that again (I can only dimly remember the references to the Aztek [smile]). I think someone must have suggested that book to me before as I picked it up a year ago. Given I'm going to start coding with a vengence soon I should brush up on the fine points of good coding practices.


Good, good. I wasn't sure if you had it already but I thought I should throw it out there, just in case.

Share this comment


Link to comment
Quote:
Original post by ArchWizard
Good, good. I wasn't sure if you had it already but I thought I should throw it out there, just in case.

I find it comforting that I do already own some of these suggested books; it means I didn't waste my money buying dreck.

Share this comment


Link to comment
Well you said any interesting book! How about the Art of Kama Sutra. Take a break from programming and enjoy yourself! heh

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!