Java-Gaming.org Hi !
Featured games (83)
games approved by the League of Dukes
Games in Showcase (527)
Games in Android Showcase (127)
games submitted by our members
Games in WIP (593)
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  
  Collision Detection thought and is it possible?  (Read 1283 times)
0 Members and 1 Guest are viewing this topic.
Offline subless

Junior Newbie





« Posted 2012-09-06 09:57:48 »

I was thinking, since I am a visual learner I want to visually put my maps together from the image tiles, and save them as one big picture(similar to a spreadsheet I guess). Lets say that my tiles are going to be 40 x 40 pixles.

Instead of checking a map tile against the player's position for collision detection, would it be possible to check an array of the exact same size of the tilled map isself?

Let me explain...

I'd like to have an invisible grid laid on-top of the map. Each grid cell will be exactly the same size as each tile 40 x 40 pixles. Each cell will either have a value of 1 for true or 0 for false.

Would it be possible to check the array/grid for all the true values and let the player be-able to walk in those cells?

Sorry for my horrible explaining skills. Look at the photo below to get an idea. The bottom line is instead of checking the map for player collision, I'd rather just allow the player's character to walk in the cells that have a true(1) value. Since the array will be the exact size as the map, it will look as if the player is actually walking on the map, when the player is actually walking threw the array/grid cells.

The brown blocks are walls that the player shouldn't be able to walk through. Therefore the brown blocks would hold a 0(false) value. The gray is the walk-able area which holds the 1(true) value, letting the methods of character movement know that the player is allowed to move in those areas. The green dot is the player.

It just seems it would be easier and processer friendly to check a boolean value vs checking a players position, then having to check the tiles position and then having to compare the two for collision detection.



If this is indeed possible it would make map creation and checking for collision detection much easier! Even though if it is indeed possible there wouldn't be any need for collision detection since the player wouldn't be allowed to walk anywhere with a false value set in the array in the first playce Smiley

Thanks in advance for any ideas or replys.
Offline Sammyster

Senior Newbie


Medals: 1



« Reply #1 - Posted 2012-09-06 11:09:20 »

Hello subless!

I belive there is an excellent tutorial for this over at cokeandcode.com if you havent checked that out yet!

A bit rough but all you should need to do is to declare an array wich holds the values you want, would be BLOCKED (0) and CLEAR(1) in this case.
Then you simply compare the players position to find out whether the tile you try to move too is clear or not.

something like this:
1  
2  
3  
4  
 public boolean moveable(int playerX, int playerY) {
        //return true if this happen- coords from player move
        return blockedData[ playerX ][ playerY ] == CLEAR;
    }


Sorry for a terrible explanation, but take a look here http://www.cokeandcode.com/index.html?page=tutorials  should cover something like this in greater details:)
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.

toopeicgaming1999 (73 views)
2014-11-26 15:22:04

toopeicgaming1999 (63 views)
2014-11-26 15:20:36

toopeicgaming1999 (15 views)
2014-11-26 15:20:08

SHC (29 views)
2014-11-25 12:00:59

SHC (27 views)
2014-11-25 11:53:45

Norakomi (32 views)
2014-11-25 11:26:43

Gibbo3771 (27 views)
2014-11-24 19:59:16

trollwarrior1 (40 views)
2014-11-22 12:13:56

xFryIx (78 views)
2014-11-13 12:34:49

digdugdiggy (57 views)
2014-11-12 21:11:50
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!