Java-Gaming.org Hi !
Featured games (81)
games approved by the League of Dukes
Games in Showcase (513)
Games in Android Showcase (119)
games submitted by our members
Games in WIP (576)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Java and Algebra.  (Read 2656 times)
0 Members and 1 Guest are viewing this topic.
Offline BrendynT

Junior Duke


Medals: 3
Projects: 1
Exp: 7-9 months


CRTL + SHIFT + F = OP!


« Posted 2014-02-11 05:22:15 »

I love Java, both on screen and in my cup, but I'm really not all the great in Algebra. In fact I feel rather stupid when asked questions about it, for most I can't answer myself. I've realized that my ignorance with Algebra is not good, so I've really tried my hardest to learn it better but I still get tripped up on some things.

What worries me about this is my future career possibility as a programmer. Am I inevitably screwed before I can even release my first project? I really love programming, especially in Java, I can't see myself doing anything else when I am older and I really don't want to do anything else but programming and making games.

So I guess my real question is am I set to fail before I have even really began?  Huh

- The Firm Night Owl
Offline BurntPizza
« Reply #1 - Posted 2014-02-11 05:34:52 »

Quote
am I set to fail before I have even really began?

With an attitude like that? Well....

You can always learn. If you enjoy programming the way you say you do, then a lack of algebra skills seems to have not posed too much of a problem yet, and you will be motivated to press on.
If you eventually move on to complicated, math-intensive stuff like 3D graphics, then you might start to feel it.

Fortunately, you are not by any stretch the first person that has a hard time with math and is a programmer. There are innumerable tutorials, libraries, and tools to help with all skills involved in our craft.

If you want game-specific information, check out the sidebar at /r/gamedev

Also, StackOverflow is your friend. (but Google will always be your best friend)

Remember, keep it fun, and go code!  Wink
Offline DavidW
« Reply #2 - Posted 2014-02-11 05:35:14 »

Algebra isn't as important as basic logic and being able to think logically.  But if you are serious about getting better just practice!  I'm a professional mathematician, so you can trust me  Grin

Hello!
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline HeroesGraveDev

JGO Kernel


Medals: 269
Projects: 11
Exp: 2 years


┬─┬ノ(ಠ_ಠノ)(╯°□°)╯︵ ┻━┻


« Reply #3 - Posted 2014-02-11 06:51:30 »

Algebra isn't hard. Applying it to solve problems is.

Offline Jimmt
« League of Dukes »

JGO Kernel


Medals: 136
Projects: 4
Exp: 3 years



« Reply #4 - Posted 2014-02-11 06:58:10 »

I think that math isn't that vital in game programming unless you want to go low level, maybe make your own physics libraries, etc. The concept of problem solving is the same, but programming isn't quite as abstract as math. In the end, though, it's pretty important that you learn math so you can get into a good college and get some good cs lectures Grin
Offline Roquen
« Reply #5 - Posted 2014-02-11 08:22:50 »

Programming is applied mathematics.  So if you can reasonably program then you have must have some minimal math skills in a number of different fields even if you don't realize it.  As for game programming...it really depends.  If you look at some well known game engines there's some very serious mathematics going on and an understanding of algebra is the first important stepping stone to these higher level mathematics.  Basic algebra, vector analysis, linear algebra, numeric analysis and calculus skills are very commonly needed.  Even hardly heard of forms of mathematics are used:  example Clifford algebra is used by http://www.geomerics.com/ for Enlighten.  So it all depends on what you want to do and how far a target your setting for yourself in the future.
Offline Cero
« Reply #6 - Posted 2014-02-11 11:17:21 »

you dont really need math
the bits you do you will then learn because you want to understand and do it and there you go

math is something you use but you dont have to necessarily understand
like calculating the root of a given number. you call a method
at some point you may have known how to calculate it on paper, but who cares.

math has to be your slave =D

Offline Gibbo3771
« Reply #7 - Posted 2014-02-11 11:23:58 »

I am terribad at maff and I feel as if I get along just fine, like I am seriously bad. I spent 20 minutes yesterday wondering why my code that displays a percentage of my health would not work. Derp derp.

"This code works flawlessly first time and exactly how I wanted it"
Said no programmer ever
Offline Grunnt

JGO Wizard


Medals: 79
Projects: 8
Exp: 5 years


Complex != complicated


« Reply #8 - Posted 2014-02-11 11:52:59 »

Being good at algebra definitely correlates with being good at programming. However, this does absolutely not mean that you cannot be a good programmer if you are not so good at algebra. There's many aspects to programming in practice, from recognizing structure, via die hard mathematics, to softer social skills, that all help. So don't let algebra stop you  Grin

Offline ctomni231

JGO Wizard


Medals: 99
Projects: 1
Exp: 7 years


Not a glitch. Just have a lil' pixelexia...


« Reply #9 - Posted 2014-02-11 18:11:14 »

Even though you don't technically need Algebra in order to program, It'd be a lot easier if you did.

In programming, you have to be able to use your logic to tell objects how to move in a 2D environment. Algebra is basically what we use to move objects in a 2D space. The only place that you can get away with using basic math would probably be a text game.

It won't completely kill your programming career if you don't know Math. However, anyone who is serious about learning how to program games needs to pay attention to the concepts learned in the higher levels of Math. The time taken to learn Algebra (and higher level Math) will definitely not be wasted, and your skills will improve dramatically because of it.

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Phibedy

Senior Duke


Medals: 8



« Reply #10 - Posted 2014-02-11 19:02:14 »

You don't need that much math for programming (even for physics and opengl). That's just based on some vector-math. So as long as you are able to handle matrices (Just watch a youtube-tutorial it's not difficult, there are just some rules you have to know). Of course you should be able to calculate angles and do geometry. Even if I could solve a mathematical problem on my own I google the result because there is always someone who implemented it efficiently Smiley
Math is fine and the best math is already done by someone else  Grin
Offline philfrei
« Reply #11 - Posted 2014-02-11 20:44:08 »

but I still get tripped up on some things.
We all do!

Quote
I can't see myself doing anything else when I am older...
It's a big and quickly changing world. There are many possibilities, most of which are not apparent yet. Self-limiting statements like these always throw warning flags for me. Maybe that wasn't your intention.

Trig is definitely helpful for figuring out how to place, draw or move things even for simple games. And algebra is helpful for trig. But algebra is also a pretty wide-ranging subject.

I think if you plan to rely on using 'game engines' for coding, you can probably avoid a lot of math. But you will be limited by the bounds of the engines.

If you want to code without engines, or create an engine or component of an engine, you are going to have to know enough math to at least pick and implement the right "recipes" on an as-needed basis.

If you are in school at the moment and having troubles, it could be a result of difficulty working with a particular teacher or text. A teacher with another style might present the material in a way that works better for you.

Also, math is not something you can learn by only giving it surface or split attention. It is more like a muscle that grows in capability with use. It requires some patience, a willingness to take some time with each step. I think this is probably the case because one is creating new neuronal connections (similar to creating or strengthening muscle mass?). These connections make it easier to "visualize" steps. But those connections and resulting mental skills won't grow unless you actually use them.

"It's after the end of the world! Don't you know that yet?"
Offline Ghidra

Senior Newbie


Medals: 3



« Reply #12 - Posted 2014-02-15 10:05:51 »

Even though you don't technically need Algebra in order to program, It'd be a lot easier if you did.

In programming, you have to be able to use your logic to tell objects how to move in a 2D environment. Algebra is basically what we use to move objects in a 2D space. The only place that you can get away with using basic math would probably be a text game.

It won't completely kill your programming career if you don't know Math. However, anyone who is serious about learning how to program games needs to pay attention to the concepts learned in the higher levels of Math. The time taken to learn Algebra (and higher level Math) will definitely not be wasted, and your skills will improve dramatically because of it.

This is the best answer to the original question, followed by the previous response by philfrei who mentioned the incredible values that come along with knowing Trig.  (These really cannot be overstated.)

Algebra is pretty basic stuff and falls into a category one might call "fundamental knowledge" for people who are effective programmers.  You should at least learn enough about it to be able to tell on your own whether or not it is required for your programming exploits.  In other words, you should be able to see on your own what programming is and what Algebra is, then you can determine how much one relates and depends on the other.  Think of Algebra as a level of mathematical "literacy" that is equivalent to writing a coherent and grammatically correct one page essay.  (Or being able to read and understand the meaning of this post, perhaps?)

Also, it's a little alarming to me some of the responses people are giving.  The underlying questions is a valid one, however:  How important is it to know and understand Math to be an effective games programmer?

My answer is Pre-Calculus (College Algebra plus Trig) as a bare minimum.  The Algebra at this level is advanced enough that it scares a lot of people away, but at the same time the new material is entirely complementary to the raw algebraic concepts that have been covered in previous classes.  If you can't figure out how to simplify complex exponential expressions then how in the world would you also be able to write a nested loop three layers deep that also performs some sort of worthwhile task?  First semester College Physics will give you enough applications of the material covered in Pre-Calculus for you to really understand what the f**k it was you were doing with those seemingly arbitrary sine/cosine/tangent functions and why they are even relevant (and they are most certainly relevant).

You don't need school to learn Math, by the way.  There are plenty of good books out there you can use to teach yourself.  (Check for Algebra books published by Dover on Amazon; for example:  http://www.amazon.com/Basic-Algebra-Second-Edition-Mathematics/dp/0486471896/ref=sr_1_2?ie=UTF8&qid=1392458147&sr=8-2&keywords=basic+algebra+dover)
Offline yokiyoki

Junior Duke


Exp: 1 month or less


"It is fun to learn new things"


« Reply #13 - Posted 2014-02-15 10:32:06 »

Is algebra the main problem here?

If you only know the basic math (MDAS), I think there will be no problem.

I think, the main problem is algorithm or logic.
If we can`t do this, I think it will be hard for us to program.
Offline opiop65

JGO Kernel


Medals: 156
Projects: 7
Exp: 3 years


JumpButton Studios


« Reply #14 - Posted 2014-02-15 11:55:47 »

Just want to say, I used to be terrible at math. I hated going to school everyday because I sucked so bad at math. But then I got into programming, and I found a use for all the math I had learned, and that made me want to learn more. Now I bought a book (or two) on the math behind game programming, I've been paying more attention in math class and trying very hard to understand, and I've been using it in the real world. Now, don't get me wrong. I still don't know much that pertains to game development (I'm taking Algebra II/Trig in school right now) because I'm still young, but I hope to fix that. I also took physics as a 10th grader, although I forgot most of it already Sad

Question though. Someone mentioned above that pre-calc is recommended. Can anyone confirm that? I admit I really don't want to take it if I don't have to, but I can. I'm a little scared of it though...

Offline trollwarrior1
« Reply #15 - Posted 2014-02-15 11:57:10 »

I don't like schol becuze you dunt learn notin here.
Offline Roquen
« Reply #16 - Posted 2014-02-15 13:10:51 »

The bottom line is the less you know about game programming related topics the more you're limiting what you can do for yourself.  You'll be (potentially) forced to rely on finding libraries that do exactly what you want  and for them relatively free from bugs.  That might well be acceptable for what you want to do.  On the whole you'll be much better off if you understand the minimal concepts behind these topics than having no-knowledge at all.

Mathematics (esp low level) is generally taught in a boring way.  And the only way to have usable working knowledge is to get off your ass and work problems (like anything else in life).  It gets more interesting the further up the food chain you go.

Go look at any GDC tech paper, or realtime related papers (say in graphics) and you'll find a ton of higher level mathematics.
Offline Longarmx
« Reply #17 - Posted 2014-02-15 16:57:53 »

Question though. Someone mentioned above that pre-calc is recommended. Can anyone confirm that? I admit I really don't want to take it if I don't have to, but I can. I'm a little scared of it though...

I've taken pre-calc and it wasn't really too bad. The most notable things you learn in that class are analytical trig (basically using trig identities to do proofs and solve triangles in new ways ex. laws of sines and cosines), applications of trig (parametric equations, polar coordinates, complex number simplification), and statistics/series/sequences.

I have not had to use any of this knowledge for programming so far. The only part I might need is polar coordinate system.
Edit: also probably counting in series/sequences.

Offline Jimmt
« League of Dukes »

JGO Kernel


Medals: 136
Projects: 4
Exp: 3 years



« Reply #18 - Posted 2014-02-15 17:39:30 »

Just want to say, I used to be terrible at math. I hated going to school everyday because I sucked so bad at math. But then I got into programming, and I found a use for all the math I had learned, and that made me want to learn more. Now I bought a book (or two) on the math behind game programming, I've been paying more attention in math class and trying very hard to understand, and I've been using it in the real world. Now, don't get me wrong. I still don't know much that pertains to game development (I'm taking Algebra II/Trig in school right now) because I'm still young, but I hope to fix that. I also took physics as a 10th grader, although I forgot most of it already Sad

Question though. Someone mentioned above that pre-calc is recommended. Can anyone confirm that? I admit I really don't want to take it if I don't have to, but I can. I'm a little scared of it though...
If you want to fully know physics I think you have to learn all the way up to calculus anyways. I'm currently in precalc h as a tenth grader (top public school) and it really isn't that hard. Like everything else, your success relies on your foundation (how well you learned algebra/trig).
Offline opiop65

JGO Kernel


Medals: 156
Projects: 7
Exp: 3 years


JumpButton Studios


« Reply #19 - Posted 2014-02-15 19:02:17 »

I might take it then, next year is my senior year and I would rather learn precalc from a trained teacher than say a book. I guess I'm wary of it because everyone I know always complains about it and says its hard and all that... But who knows! I'll take the plunge and do it.

Offline Ghidra

Senior Newbie


Medals: 3



« Reply #20 - Posted 2014-02-26 02:59:07 »

Since no one else has brought it up, I feel it is worthwhile to point out that Trigonometry is the bare minimum for 2D games development.  It's not that a person can't program a game without understanding how to use the sine/cosine/tangent functions, but your solutions to certain development obstacles--such as a flying ship--are going to be hundreds upon hundreds of lines of code when the same logic could be more effectively implemented in dozens of lines or less using trig functions.

If you ever want to develop 3D games then Trigonometry by itself is not going to cut it.  The material that is covered in third semester Calculus is all about describing three dimensional spaces.  You also learn how to exploit vector multiplication with the dot and cross products to do stuff that is really impossible otherwise.  These mathematical methods are absolutely fundamental in manipulating objects in 3D space.

As an analog to what I mentioned in the my last post regarding the trig functions, it is impossible to overstate how important vector multiplication is to 3D games development.  Not knowing how they work is like not knowing how to add 1 + 1. 

Also, if you want to understand anything at all about computer graphics (both 2D and 3D) then you should at least have some foundational comprehension of Linear Algebra.
Offline opiop65

JGO Kernel


Medals: 156
Projects: 7
Exp: 3 years


JumpButton Studios


« Reply #21 - Posted 2014-02-26 03:02:49 »

Well I know what I'm doing in college now. Here we come calculus... My friends say it isn't too bad though, so I'm not that worried. (lies)

Offline tom_mai78101
« Reply #22 - Posted 2014-02-26 03:04:40 »

Honest question:
Would people recommend books like the following example below to get people on track with applied math in programming?

http://www.amazon.com/Math-Primer-Graphics-Game-Development/dp/1568817231/ref=sr_1_1?s=books&ie=UTF8&qid=1393384123&sr=1-1&keywords=3d+math+primer+for+graphics+and+game+development

Offline opiop65

JGO Kernel


Medals: 156
Projects: 7
Exp: 3 years


JumpButton Studios


« Reply #23 - Posted 2014-02-26 03:06:24 »

Funny you mention that book, I just bought the previous version of it and I love it. Haven't gotten very far into it yet (sheer laziness), but the author presents the material in a rather (for lack of better terms) amazing way that really makes me want to learn. He puts problems into context and makes hard ass math pretty fun, I would definitely recommend buying it even if it is just a start to learning all the 3D math you'll need.

Edit:
Duh it'll only teach you the basics, its a primer... I'm stupid some times.

Offline Gibbo3771
« Reply #24 - Posted 2014-02-26 05:01:15 »

Books are expensive, I only buy past paper books to practice.

I learned a shit load from this website

https://www.khanacademy.org/math/algebra

It has pretty much everything you need.

"This code works flawlessly first time and exactly how I wanted it"
Said no programmer ever
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

Longarmx (37 views)
2014-10-17 03:59:02

Norakomi (28 views)
2014-10-16 15:22:06

Norakomi (24 views)
2014-10-16 15:20:20

lcass (27 views)
2014-10-15 16:18:58

TehJavaDev (52 views)
2014-10-14 00:39:48

TehJavaDev (54 views)
2014-10-14 00:35:47

TehJavaDev (42 views)
2014-10-14 00:32:37

BurntPizza (63 views)
2014-10-11 23:24:42

BurntPizza (36 views)
2014-10-11 23:10:45

BurntPizza (77 views)
2014-10-11 22:30:10
Understanding relations between setOrigin, setScale and setPosition in libGdx
by mbabuskov
2014-10-09 22:35:00

Definite guide to supporting multiple device resolutions on Android (2014)
by mbabuskov
2014-10-02 22:36:02

List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!