Java-Gaming.org    
Featured games (79)
games approved by the League of Dukes
Games in Showcase (477)
Games in Android Showcase (107)
games submitted by our members
Games in WIP (534)
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  
  Movement issue with strafe  (Read 1123 times)
0 Members and 1 Guest are viewing this topic.
Offline MickeyB

Senior Member




my game will work, my game will work!


« Posted 2004-11-10 13:36:52 »

Here is my code from CubeWars for player movement:

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
      public void forward() {
            xpos -= (float) Math.sin(heading * CubeWars.piover180) * speed;
            zpos -= (float) Math.cos(heading * CubeWars.piover180) * speed;                  
      }
     
      public void reverse() {
            xpos += (float) Math.sin(heading * CubeWars.piover180) * speed;
            zpos += (float) Math.cos(heading * CubeWars.piover180) * speed;            
      }
     
      public void turnRight() {
            heading -= turn;
      }
     
      public void turnLeft() {
            heading += turn;
      }
     
      public void strafeRight() {;
            xpos += (float) Math.cos(heading * CubeWars.piover180) * speed;
            zpos -= (float) Math.sin(heading * CubeWars.piover180) * speed;                  
      }
     
      public void strafeLeft() {;
            xpos -= (float) Math.cos(heading * CubeWars.piover180) * speed;
            zpos += (float) Math.sin(heading * CubeWars.piover180) * speed;                  
      }


Looking for suggestions on what to change on strafing to not doulbe players speed. thanks!!!

MickeyB

Current Project: http://www22.brinkster.com/mbowles/
Offline Catharsis

Junior Member


Exp: 18 years


TyphonRT rocks!


« Reply #1 - Posted 2004-11-10 16:08:13 »

Quote

Looking for suggestions on what to change on strafing to not doulbe players speed. thanks!!!


Are you referring to when a player may be say moving forward and also straffing in a single update?  I solved this with Auriga3D by scaling the "speed" factor by a "half movement" value in these cases.


Offline MickeyB

Senior Member




my game will work, my game will work!


« Reply #2 - Posted 2004-11-10 16:26:32 »

Yes when forward/backward and strafe in a single tick.

MickeyB

Current Project: http://www22.brinkster.com/mbowles/
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Catharsis

Junior Member


Exp: 18 years


TyphonRT rocks!


« Reply #3 - Posted 2004-11-10 19:20:23 »

Quote
Yes when forward/backward and strafe in a single tick.


Yeah.. I actually use a switch statement that works with a movement state that is created by bitwise ops |= and ^= based on the current key state.  This makes it quick and easy to detect when straffing and movement is occuring.  It also makes things easy in regard to cancelling movement when say strafeleft and straferight are held down simultaneosly.

You probably will want to make your movement functions accept a speed and depending on what your movement state is pass in the unmodified speed variable or a scaled value.

Offline Orangy Tang

JGO Kernel


Medals: 56
Projects: 11


Monkey for a head


« Reply #4 - Posted 2004-11-10 21:56:06 »

I find it easier to:
- Process all the keystates, adding their effect into a resultant velocity/force.
- Normalise the force to length 1.
- Scale by your required speed.

Simple & works for anything you can throw at it. Sure you've got a square root in there, but you're only going to be doing it once every frame.

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
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.

pw (35 views)
2014-07-24 01:59:36

Riven (33 views)
2014-07-23 21:16:32

Riven (21 views)
2014-07-23 21:07:15

Riven (24 views)
2014-07-23 20:56:16

ctomni231 (55 views)
2014-07-18 06:55:21

Zero Volt (47 views)
2014-07-17 23:47:54

danieldean (38 views)
2014-07-17 23:41:23

MustardPeter (43 views)
2014-07-16 23:30:00

Cero (59 views)
2014-07-16 00:42:17

Riven (56 views)
2014-07-14 18:02:53
HotSpot Options
by dleskov
2014-07-08 03:59:08

Java and Game Development Tutorials
by SwordsMiner
2014-06-14 00:58:24

Java and Game Development Tutorials
by SwordsMiner
2014-06-14 00:47:22

How do I start Java Game Development?
by ra4king
2014-05-17 11:13:37

HotSpot Options
by Roquen
2014-05-15 09:59:54

HotSpot Options
by Roquen
2014-05-06 15:03:10

Escape Analysis
by Roquen
2014-04-29 22:16:43

Experimental Toys
by Roquen
2014-04-28 13:24:22
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!