ALT: The Perfect Game Programming Enviroment

henryj
Unregistered
 
Post: #1
The recent discussion about buying a BASIC ide and the never ending debate about what's the best language to learn leads to the question...

"If you could create the perfect game development environment, what would it be?"

Would you have a compiled language like c or interpreted like perl?

Would you want low level access to graphics api (sdl, opengl) or a built in scenegraph?

Would it be a visual system like Real Basic or lower level like Project Builder?

Would it even be code based? Would it be more like Blender.
Quote this message in a reply
Moderator
Posts: 916
Joined: 2002.10
Post: #2
Definitely a compiled langauge that way you could get as much speed as possible from it.
The enviroment should have lots of high level VERY easy to use libraries that allow people easy ways to do thing, but should also keep everything open up to allow for customization. Such as a sprite drawing library that has simple drawing routines and everything, but also allows you to access the data itself so you can make changes to the actual data.
And Project Builder has lots of graphical ways to put things together combined with IB. But the IDE would include tools to do things. Such as if it had a sprite creator, then it would AT LEAST include a simple sprite editor so that all those who don't have Photoshop could still create things.
And it would have to have code. All could languages and IDEs to create games and such have to have code. At least scripting code. And the code should be very C like, because, I believe the BASIC languages leave too much room for non good stuff( bad programming!) in. Not that I'm sayign you can't program bad in C, I would just not like people to just throw variables all over the place and other stuff...
In conclusion, yeup Smile
Quote this message in a reply
Moderator
Posts: 608
Joined: 2002.04
Post: #3
Cocoa + PB + IB work just peachy for me Rasp
Quote this message in a reply
Moderator
Posts: 916
Joined: 2002.10
Post: #4
Quote:Originally posted by jabber
Cocoa + PB + IB work just peachy for me Rasp

but what about for people with no skill?
Quote this message in a reply
Member
Posts: 201
Joined: 2002.06
Post: #5
In order to most effectively use a higher-level environment, one must know how it works at a low-level anyway. A bad programmer will always be a bad programmer until he gets better.Wink
Quote this message in a reply
Moderator
Posts: 608
Joined: 2002.04
Post: #6
Quote:Originally posted by skyhawk
but what about for people with no skill?
That's the wonderful thing about Cocoa, you don't have to have skill. Just control-drag and type a few lines of code and you have a custom word processor!
Quote this message in a reply
Member
Posts: 469
Joined: 2002.10
Post: #7
Cocoa is great. However, I do find that features in Cocoa are not always complete or useable. Much of the API is still being developed and stands to be vastly improved. e.g. if you want to use Quicktime, you still have to fall back on some carbon calls for nitty gritty, even though there's a NSView subclass for quicktime. I'm happy with the pace at which it's advancing though. I use Cocoa for everything I do now. Haven't touched Macromedia Director in a while...

---Kelvin--
15.4" MacBook Pro revA
1.83GHz/2GB/250GB
Quote this message in a reply
Member
Posts: 509
Joined: 2002.05
Post: #8
I prefer METAL and Photoshop now, but I am starting to learn C so that will probably change to PB and IB in a year or so
Quote this message in a reply
henryj
Unregistered
 
Post: #9
Quote:I prefer METAL and Photoshop now, but I am starting to learn C so that will probably change to PB and IB in a year or so

Why would you change. What is wrong with Metal and Photoshop that will be better with C, PB, IB?

Why did you choose Metal in the first place.
Quote this message in a reply
Moderator
Posts: 608
Joined: 2002.04
Post: #10
Quote:Originally posted by henryj
Why would you change. What is wrong with Metal and Photoshop that will be better with C, PB, IB?
I can see for one of two reasons: 1) better speed, 2) if you want to be hired as a programmer, they will probably want you to know C/C++.
Quote this message in a reply
henryj
Unregistered
 
Post: #11
Quote:1) better speed,
Define speed. I was surprised at the number of games in udev that were written in Basic. For the most part they weren't slower than the c games (one of the fastest, smiley tag was written in an interpreted scripting language!) and they were more 'finished' than the others. So the advantage is you get the game done faster, against little or no performance drop.

What would happen if you could write your game in a language simpler to use than basic, that offered the performance of c.

Quote:2) if you want to be hired as a programmer, they will probably want you to know C/C++.

Very good point, one that I use often in the c++ vs obj-c debate. I'm a professional c++ programmer, I write games for relaxation(?). Do other's here write games for the games sake or for your CV?
Quote this message in a reply
Member
Posts: 42
Joined: 2002.09
Post: #12
I use METAL rather than PB/ObjC for 2D games, because I haven't much time and BASIC is faster for quick and dirty development. Because METAL's graphics statements are only wrappers around QuickDraw functions, the games run at about the same speed. The bottlenecks in QuickDraw 2D games are the system bus and memory. Since the 'centre of the loop' is the same whether a C program or a BASIC one is 'copybits'ing, use the quickest to develop. I find METAL/GraphicConverter/ResEdit a lethal combination.

Visit http://www.theDailyGrind.net for your recommended daily intake of embittered satire.
Quote this message in a reply
Moderator
Posts: 608
Joined: 2002.04
Post: #13
Quote:Originally posted by henryj
Define speed. I was surprised at the number of games in udev that were written in Basic. For the most part they weren't slower than the c games (one of the fastest, smiley tag was written in an interpreted scripting language!) and they were more 'finished' than the others.
Good point. What I was thinking was basically this: in TNT or Metal Basic, all of the calls are wrappers around Carbon/QT functions. Obviously that will slow things down some, but Cocoa is the same way (I believe). Advantage to Cocoa being that you can bypass those wrappers or use OpenGL if speed becomes a problem. Compare that to the two Basics where you use the wrappers always, for better or worse.

Having said all of that, I wish TNT or Metal Basic had been around when I first began programming games. I think I would be farther along that I currently am :o
Quote this message in a reply
AJ Infinity
Unregistered
 
Post: #14
An environment like Flash or RealBasic would do well. In Flash, people get started with simple interactive UI scripting easily, then they move on to drag-and-drop Components (like plugins in RealBasic), forms, and quizzes, and then their scripts get more complex as they do different things such as navigation tracking with variables, objects, and arrays. Finally they start working on the server communication, XML, strings, making of games, and chat rooms. Sounds like RB, right. I've worked with RB before and I don't like it because I don't like Basic. I had bad experiences with Basic on TI-86/TI-89 calculators Sad. ObjC I'm not too fond of it although I'll use it over C++/C if I had no other choice :rollyes:. But my experience lies mostly with JavaScript, ActionScript, AppleScript, and now Java and ObjC (Or I could have just said Cocoa Cool).

I began programming games in C, and since then I've despised that languages. I worked with GLUT and OpenGL, and I would write the code (and the makefile) in pico, and compile the code with that cc command. I did this all out of the Terminal because I didn't have the Developer Tools. For some strange reason, they didn't come with my Mac. I have them now, though, but I'm still using the Dec. 2001 DevTools.

After C, I realized there had to be something easier. I checked Flash 5 but ditched it. I picked Coccoa/ObjC and started building Cocoa apps. Why I'm not to fond of ObjC is because those [action receiver] and NSString *myStringName things are weird Smile. Well, I' use them though Grin. Then I realized there was something else...Java. Then I got a Flash MX demo and went crazy exploring Flash gamedev. My demo ended after 30 days and my father (giver of money, supplier of Macs) ordered it from Creation Engine. Yeah, nice father, huh? He's like that when my most of my money goes to expensive books (Inside LightWave 7.5, Flash MX Game Design Demystified, Physics for Game Developers, AI Game Programming Gems) and software (LightWave 3D), and gamesSmile.
Quote this message in a reply
Zachary
Unregistered
 
Post: #15
METAL basic is fine for me. It'll be a hell of a long time before I make a game that needs to be faster than what METAL can provide.
Quote this message in a reply
Post Reply 

Possibly Related Threads...
Thread: Author Replies: Views: Last Post
  Beginning Game Programming - Choices Evan Stallings 8 4,863 Mar 28, 2013 03:07 PM
Last Post: Evan Stallings
  Cocoa Game Programming Workshop jeonghyunhan 5 6,121 Mar 20, 2009 08:40 PM
Last Post: SethWillits
  Starting a 2D game programming. How? andrern2000 4 4,907 Dec 19, 2007 05:34 PM
Last Post: BinarySpike
  Game programming resources for Java JeroMiya 3 4,004 Sep 28, 2007 04:06 PM
Last Post: JavaGuru
  "Beginning Game Programming" - game engine skrew 5 5,919 May 15, 2006 03:52 AM
Last Post: MattDiamond