**0**

# Geometry!

###
#1
Members - Reputation: **278**

Posted 21 July 2012 - 03:46 AM

I had asked some one about linear algebra book to understand math in games but he says that you don't want that book you need geometric algebra so:

what is geometric algebra and how it relates to game?

what is computational geometry and how it relates to game ?

how geometric algebra and computational geometry aid game development?

I am a bit confused since I am not computer science student ,But I had good background in 3d graphics and game programming and development in general good but math side especially those relate to computation and algebra make me confused.

At last any good books for both geometric algebra & computational geometry for beginners and dose they need other prerequisites books ?

sorry for lot questions

###
#2
Crossbones+ - Reputation: **3011**

Posted 21 July 2012 - 04:28 AM

- what is geometric algebra and how it relates to game?
- what is computational geometry and how it relates to game ?
- how geometric algebra and computational geometry aid game development?

- You probably want to use the term "linear algebra" instead or "vector algebra" (vector spaces are referred as "linear spaces" in formal math). From a 10,000 ft view, linear algebra is just typical algebra, extended in multiple dimensions. However, it hides some interesting details such as matrix properties and manipulation or the fact that dot(u,v) = cos(AngleBetween(u, v)) * len(u) * len(v). Geometric algebra, as introduced by the wiki page appears to be rubbish for computer usage.
- Computational Geometry? It appears the wiki page is excellent resource. In general, you don't need to care much about those things, as libraries are here to help you although you must understand the concepts involved to avoid relying on assumptions which does not hold true.
- They help game development in the same way arithmetics help you understanding how many months you need to work to buy a new car. It's the basic rules. Of the two, understanding linear spaces is very important, while you can focus less on computational geometry out of your picture for a while.

###
#3
Crossbones+ - Reputation: **1616**

Posted 21 July 2012 - 04:49 AM

Computational geometry, as the name suggest, is an applied maths field whose objective is to come up with algorithms to solve geometric problems. Examples of problems solved by this field can be finding the convex hull of a set of points or finding intersections or .. You probably already know some of these algorithms and it's probably a good field to know. I have read this book by O'Rourke. He has also written a new book recently which you may find interesting. Another good book is this book by de Berge at al.

Geometric algebra is, as far as I know, a generalization of linear algebra where higher dimensional vectors and new operators are defined. This isn't a really important field. It probably has its usage, but you can probably live without that. I do not know any book, but you can find several information by searching this keyword in Google.

###
#4
Members - Reputation: **278**

Posted 21 July 2012 - 05:52 AM

I know linear algebra (vectors , matrices , operations on them ....) I know this material well it's linear algebra , so as both of you says it's similar to Geometric algebra so I should not spend much time to learn it as I know basis (vectors , matrices , operations on them ....) is this right ?? and I should go for computational geometry as it's the best one for me now??

as I understand, computational geometry used to define good algorithms not for AI , Graphics but for geometry (lines , points ...etc) is this right ??!

what make me post this topic is that I had bought real-time collision detection book and it's heavily require (algorithims , computational geometry ) also another AI book which require heavily understanding of algorithims and while I am searching in google they says that computational geometry is very good for algorithims this is the story !!

thanks apatriarca for books , what is computational geometry prerequisites books( i think it's data structure,Algorithims)?

**Edited by mrmohadnan, 21 July 2012 - 06:01 AM.**

###
#5
Crossbones+ - Reputation: **12362**

Posted 21 July 2012 - 06:17 AM

Linear Algebra is very important, and you seem to know the basics already.

Computational Geometry is a large field, and I am sure parts of it are relevant to some video-game programmers, but not most.

###
#6
Crossbones+ - Reputation: **1616**

Posted 21 July 2012 - 07:39 AM

###
#7
Members - Reputation: **278**

Posted 21 July 2012 - 09:13 AM

ok 1: alvaro here where the term geometric algebra is ?? this is the book :

Geometric Algebra for Computer Science: An Object-Oriented Approach to Geometry book for daniel ?? so the term is used I don't know what he mean !!

2: apatriarca I want to learn real-time collision detection so what is the prerequisites of computational geometry I had to know in order to solve real-time collision detection problem ?

Iam so confused right now pls all what I need is that : I am developing AI and Collision system what I need for that what is the prerequisites : (I know linear algebra and discrete math and calculas ....etc I know all these stuff ) so :

for example some says you need good understanding of algorithims and computational geometry , but some says you need also good linear algebra not strong because all what I need is some vector and matrix operations ????

so what about members of this website what you know about this ??

**Edited by mrmohadnan, 21 July 2012 - 09:16 AM.**

###
#8
Crossbones+ - Reputation: **12362**

Posted 21 July 2012 - 12:11 PM

###
#10
Crossbones+ - Reputation: **3011**

Posted 23 July 2012 - 01:36 AM

I disegree. Let's have a talk about convex hull extraction from an arbitrary shape without exceeding an error. Minowski sums. GJK and EPA algorithms. The fact SAT does not work on arbitrary geometry. Acceleration structures for broadphase rejections and narrowphase testing. The only reason to write collision detection at home is to better appreciate ready-to-go libraries IMHO.You are probably ready to learn how to do collision detection already. You may want to make yourself familiar with the dot product, and that's about it.

###
#11
Crossbones+ - Reputation: **12362**

Posted 23 July 2012 - 07:57 AM

To the OP: Don't allow Krohm's ominous list of techniques discourage you. You should learn some basic techniques to get you going (e.g., how to detect if two shapes of certain types intersect (segment-triangle, triangle-triangle, sphere-sphere...) and SAT for basic polyhedral shapes) and then you'll be in a position to learn pretty much anything you need. I wouldn't worry too much about prerequisites. Learn as you have to.

###
#12
Crossbones+ - Reputation: **3011**

Posted 24 July 2012 - 01:21 AM

But let's not hide ourselves behind words. Saying that one is ready to learn collision detection after understanding dot product is like saying one is ready to build a nuclear plant after he got the grasps of steel works or concrete buildings. I think your previous statement has a lot of potential to be misunderstood and I wanted to tone it down on purpose.

But if we want to hide ourselves behind words then let's say the truth: there's no prerequisite to start learning but will.