Jump to content

  • Log In with Google      Sign In   
  • Create Account

Banner advertising on our site currently available from just $5!

1. Learn about the promo. 2. Sign up for GDNet+. 3. Set up your advert!


Member Since 31 Oct 2012
Offline Last Active May 08 2015 02:05 PM

#5204376 How to actually learn game development?

Posted by NoAdmiral on 14 January 2015 - 08:54 PM

It sounds like you need to increase your motivation to program! I know what that's like, I've been there, and I'm sure a lot of the others around here have too. Programming is hard, and, especially when you're starting or working on lower-level code, it can seem like you're making absolutely no progress toward your goals. That's why I subscribe to Extra Credits, Wolfire Games, and Handmade Hero. That way, when I'm just wasting time on the internet, I'm usually looking at something that's going to give me ideas or inspiration or just a bit of abstract motivation to go back to coding. Hanging around this forum helps, too, because eventually you get to see other people struggling with what you used to struggle with and that's when you realize, even if you missed it before, that you've learned and grown as a programmer.


All of this is, of course, assuming that this is what you really want to do. 


I'll also say that I, too, learned to program in bits and pieces when I was younger (C, C++, and Pascal) and I gave each of them up because working through books didn't feel like it was leading me toward making games (or any other really cool programs) so it was hard to keep with it. I knew there was an end-goal, it just seemed like I wasn't moving toward it. To this end, if you get a bit of basic programming experience under your belt, I'd recommend this book. It's not current anymore, and it's in C# (there's a recent/current forum topic discussing its merits and caveats here), but it goes through a lot of the basics of game-programming like handling input, displaying graphics (2D with an out-dated version of OpenGL), and most importantly, the game loop. I think this book put a lot of game programming and its mechanics in perspective for me.

#5202833 New to Bullet SDK advice

Posted by NoAdmiral on 08 January 2015 - 08:18 AM

I've never used Bullet SDK, but I assume that some of what you want to do can be done. Before abandoning the SDK, play around with it in a new project, just to get a feel for it. 


You might also try asking [more specific] questions on the Bullet Physics Forums.

#5201372 Collision Detection Problem with Scale,Rotate,Fast Object

Posted by NoAdmiral on 02 January 2015 - 01:57 PM

If you have a rectangle, each of its four vertices should be equidistant from the center-point, right? So, in determining which tiles are adjacent to your character, could you generate a circle of radius equal to (or greater than) the distance from any of the box's four vertices to the center point and determine which tiles that circle collides with or is near? This would accommodate rotating the box about its center as well as scaling.Alternatively, this radius could be used to determine the width/height of a square of the appropriate size to contain your character at any rotation. Both of these larger shapes would only need to be recalculated as the character's size/scale changed.  


As for the triangle question, have you considered using the separating-axis theorem to determine collision? I'm not sure if that's outside the scope of what you've already implemented or want to implement, it's just an idea.

#5200805 Handmade Hero discussion thread

Posted by NoAdmiral on 30 December 2014 - 08:52 AM

As someone who has spent most of his time working with object-oriented programming styles, I think his approach is really interesting and I've enjoyed learning things that I took for granted (how floating point values actually work, for example). Maybe I'm just showing what a terrible programmer I really am, though. I've been pretty engaged in the series so far (haven't caught up) mostly because there are little tips/tricks scattered throughout the code (or at least things that are different than how I do).


Casey's also pretty entertaining.

#5200064 Do you put code in your engine/game you don't fully understand?

Posted by NoAdmiral on 26 December 2014 - 08:10 AM

I'm just curious, but what is it that you don't understand? Maybe one of us can help.

#5199122 Polymorphic pairwise collision testing implementation

Posted by NoAdmiral on 19 December 2014 - 11:14 AM

So my version of this is probably (definitely) not the best, but each primitive (rectangle, circle, etc.) is assigned a numerical value (0-9, you probably won't have more than 10 collision primitives). Because collisions consist of only two primitives at a time, I can do something like this:

public bool HandleCollision(Primitive a, Primitive b)
 int aType=GetPrimitiveType(a);
 int bType=GetPrimitiveType(b);

   return CircleCircleCollision((Circle)a, (Circle)b);
   return CircleRectangleCollision((Circle)b, (Rectangle)a);
   return CircleRectangleCollision((Circle)a, (Rectangle)b);

#5198926 AI in 4X

Posted by NoAdmiral on 18 December 2014 - 06:46 AM

Maybe (probably) I'm dense, but I don't think I understand how your AI is an improvement over existing 4X AI design. Acharis, few people have posted questions and you've sort of suggested that they're misunderstanding your point, so maybe a flow chart (or something) with concrete examples of how this would be applied in-game. 


Also, one of my concerns is that, if you rely too heavily of if-statements, might you wind up with highly specific code and extremely predictable behavior because, assuming the if-conditions are met, the AI will follow that line of action? One of the benefits of weighted-algorithms is that they can respond to situations that are not predicted by the coder (or not likely, or somewhere between several other situations). These also allow graded, instead of all-or-nothing, responses to challenges.

#5198373 Do i have to make basic games again after break in gamedev?

Posted by NoAdmiral on 15 December 2014 - 12:41 PM

This isn't necessarily advice, but this is what I'd try making a game with the understanding that it's been a while and my first-draft code is probably going to suck. Then, at some point as the code-base got messier and messier to the point of hindering my progress and/or trouble-shooting (or at some point where I realized I really wanted a particular feature that would require a major overhaul) I'd start again from scratch. I wouldn't necessarily have made a game, but I would have, hopefully, used a lot of that information I hadn't used in a while and pushed myself a little farther. 


That's just me...

#5198126 My Game Plan

Posted by NoAdmiral on 14 December 2014 - 09:05 AM

Starting with C# is fine. If you ever need the lower level management that C++ allows, then you can switch over, but for learning, I think your progress will be greater and your frustration lesser (and thus the likelihood that you'll stick with it) if you start with C#. 

#5197433 How to design a multivariable game engine?

Posted by NoAdmiral on 10 December 2014 - 01:08 PM

First, I wouldn't say that this is an engine-design question (aside from the fact that your cars will have engines, I presume). Really, you're asking about how to determine the effectiveness of your various car-parts under varying conditions. There are a few ways to do such, including if/then statements (if the track is wet, then these tires have x+2 points) but I think that's a messy way of doing things and requires that each condition be applied to each part. 


I would tackle this algebraically. For example, wet-weather tires tend to be stickier than all-weather or dry-weather tires, and this affects acceleration positively (more grip) but top-speed negatively (again, more grip). Using this, you can get an equation sort of like: acceleration = x[1/track-slipperiness][tire-stickiness] such that acceleration decreases with increasing track-slipperiness and increases with tire-stickiness. x, in this equation, could be related to the torque of the motor. This sort of assumes that track-slipperiness and tire-stickiness are values between 0 and 1 (for this example).


This is, of course, only a rough example (and only one example), but I'm sure others will have more input.

#5197058 Want to become a Computer Scientist

Posted by NoAdmiral on 08 December 2014 - 05:58 PM

I'm not in industry or anything, but why did you switch from C++ to Javascript/HTML5? While most programmers learn many languages (they all have their strong points), when beginning, I think it would be more beneficial to acquire a strong foundation in one language before moving on. 

#5197057 New One Game Beginner

Posted by NoAdmiral on 08 December 2014 - 05:55 PM

Sorry for the double post. I realized the last part would be difficult to understand.


I mean the one less probable to cause large errors. Since I assume such one would be difficult to fix by someone like me.

I suggest going with C#. It's easy to read (for me, compared to C/C++) and I think the Microsoft Visual Studio helps you spot simple errors in your code. I grew up programming C and C++ but because I'm a hobbyist, when I picked up programming again after a few years off, I chose C#. You'll hear people say it's slow and whatnot, but you probably won't notice that for years anyway.


The most important thing to learn while learning your first language is not language-specific syntax, but rather, the fundamentals of writing clean and purposeful (and generally faster) code. Once you've learned your first language, it's a lot easier to learn other, similar, languages.

#5196789 Can this RPG mechanic work?

Posted by NoAdmiral on 07 December 2014 - 08:33 AM

Some of you mentioned that the game wouldn't work with swapping stats and I want to tell you that levelling up in this game is not so frequent as it would in any RPG. you can battle tougher bosses with low levels, something that cannot be done in rpgs. Therefore the game will be really fun to those who aren't interested in RPG's normally
When playing RPG's, there are various things in common. grinding, talking to characters to find out what to do, facing bosses, watching cutscenes and then facing climaxes. While its understandable why everyone likes this process in RPG's, it will leave others not that interested because of one factor that can potentially stop players from playing. Grinding and I want to make that process more enjoyable by improving in it. 


I think some of us are having a hard time visualizing what your game would look/play like. At least I know I am. Telling us that the game would be fun for a broader audience or that you're going to make something "more enjoyable by improving on it" doesn't explain why, which is, I assume, what we're trying to understand. Also, what if I love the grinding process present in a lot of JRPGs? Am I going to like your new system? 


Whether something is an improvement is entirely subjective. You might like FF8's magic system because it's more dynamic and adds diversity to combat, but I might prefer FF7's magic system because it resembles deck-building (like that seen in playing-card games like Magic).


Clarifying the systems and mechanics, not just your quality-assessment of them, will help us provide feedback.

#5196314 Can this RPG mechanic work?

Posted by NoAdmiral on 04 December 2014 - 02:27 PM

I'm confused. Why is the puzzle prince fighting? Does fighting prince also do puzzles? What sort of combat system are you talking about? I assume that you're suggesting a JRPG-style combat system, but the RPG genre encompasses quite a few styles of combat (Fallout 1&2, Fallout 3, Diablo, Ultima, Final Fantasy, etc.), and there are variations among each of those.


How does this mechanic really provide a different experience than simply controlling one character? Is this experience really unique to this mechanic, or can it be achieved in other ways? How does this mechanic help tell the story, or does it? Is it just a mechanic for mechanic's sake?

#5194906 Best C# Book (NO ONLINE BOOKS/GUIDES)

Posted by NoAdmiral on 26 November 2014 - 11:26 PM

I keep Pro C# 2010 and the .Net 4 Platform (fifth edition) on my desk. I use it as a reference, but you could probably work through it a-chapter-at-a-time. It doesn't teach you to make games, though; it's very dry C# but it has a lot of example code and is pretty comprehensive. Keep in mind that no one book can fully cover everything you can do with a programming language, and different authors will tackle the same problem from different angles.


Also, the internet is a great resource. I use it all the time when I'm using new tools or those I haven't used in a while. I would recommend using the internet to answer a lot of the more basic questions, as most have been asked and answered before. 


Finally, under the Community tab, GameDev.net offers reviews and synopses of programming books. That might have some recommendations that I can't give.