source: liacs/hci/src/lg3d-wonderland-camera-vertical-keybindings.patch@ 20

Last change on this file since 20 was 2, checked in by Rick van der Zwet, 15 years ago

Initial import of data of old repository ('data') worth keeping (e.g. tracking
means of URL access statistics)

File size: 6.6 KB
  • lg3d-wonderland/src/classes/org/jdesktop/lg3d/wonderland/config/client/AvatarClientConfig.java

    # This patch file was generated by NetBeans IDE
    # This patch can be applied using context Tools: Apply Diff Patch action on respective folder.
    # It uses platform neutral UTF-8 encoding.
    # Above lines and this line are ignored by the patching process.
     
    5555    private float   stepSize;
    5656    private float   acceleration;
    5757    private float   turnRate;
     58    private float   lookRate;
    5859    private String  username;
    5960    private Color   userColor;
    6061
     
    6667        stepSize                        = 0.1f;         // world units
    6768        acceleration                    = 0.01f;        // world units per second
    6869        turnRate                        = 2.0f;         // degrees
     70    lookRate            = 2.0f;     // degrees???
    6971        cameraMode                      = AvatarCamera.Mode.DEFAULT;
    7072        setUserColor(Color.BLACK);
    7173        setUsername(null);
     
    114116        this.turnRate = turnRate;
    115117    }
    116118
     119    public float getLookRate() {
     120        return lookRate;
     121    }
     122
     123    public void setLookRate(float lookRate) {
     124        this.lookRate = lookRate;
     125    }
     126
    117127    public AvatarCamera.Mode getCameraMode() {
    118128        return cameraMode;
    119129    }
  • lg3d-wonderland/src/classes/org/jdesktop/lg3d/wonderland/scenemanager/WalkBehavior.java

     
    7881    public static final float DEFAULT_STEP_SIZE = 0.1f;
    7982    public static final float DEFAULT_ACCELERATION = 0.01f; // per second.
    8083    public static final float DEFAULT_TURN_RATE = (float)Math.toRadians(5.0);
     84    public static final float DEFAULT_LOOK_RATE = (float)Math.toRadians(5.0);
    8185           
     86   
    8287    public static float INIT_STEP_SIZE = DEFAULT_STEP_SIZE;
    8388    public static float INIT_TURN_RATE = DEFAULT_TURN_RATE;
     89    public static float INIT_LOOK_RATE = DEFAULT_LOOK_RATE;
    8490    public static float INIT_ACCELERATION = DEFAULT_ACCELERATION;
    8591
    8692    private static final Logger logger = Logger.getLogger(WalkBehavior.class.getName());
     
    94100        val = AvatarClientConfig.getDefault().getTurnRate();
    95101        if (val > 0) INIT_TURN_RATE = (float)Math.toRadians(val);
    96102
     103    val = AvatarClientConfig.getDefault().getLookRate();
     104        if (val > 0) INIT_LOOK_RATE = (float)Math.toRadians(val);
     105
    97106        val = AvatarClientConfig.getDefault().getAcceleration();
    98107        if (val > 0) INIT_ACCELERATION = val;
    99108    }
     
    258267       
    259268        float stepSize = s.getStepSize();
    260269        float turnRate = s.getTurnRate();
     270    float lookRate = s.getLookRate();
    261271        AvatarCamera camera = AvatarControlBehavior.getAvatarControlBehavior().aCamera;
    262272
    263273        if (s.forward ) step.z      -= stepSize;
     
    268278        if (s.down    ) position.y  -= stepSize;
    269279        if (s.turnLeft) s.rotY      -= turnRate;
    270280        if (s.turnRight)s.rotY      += turnRate;
     281        if (s.lookUp)   s.rotX      -= lookRate;
     282        if (s.lookDown) s.rotX      += lookRate;
    271283       
     284
     285        // Clamp X rotation (look up/down
     286        if (s.rotX>Math.PI/2) s.rotX = (float)Math.PI/2;
     287        if (s.rotX<-Math.PI/2) s.rotX = (float)-Math.PI/2;
     288
     289
    272290        if (s.rotY>2.0f*Math.PI) s.rotY -= 2.0f*(float)Math.PI;
    273291        if (s.rotY<-2.0f*Math.PI) s.rotY += 2.0*(float)Math.PI;
    274292
     
    451469            case AVATAR_DOWN        : s.down = true; break;
    452470            case AVATAR_TURN_LEFT   : s.turnLeft = true; break;
    453471            case AVATAR_TURN_RIGHT  : s.turnRight = true; break;
     472            case AVATAR_LOOK_UP     : s.lookUp = true; break;
     473            case AVATAR_LOOK_DOWN   : s.lookDown = true; break;
    454474
    455475            case AVATAR_SPEED_UP        :
    456476                 s.stepSize += DEFAULT_STEP_SIZE;
     
    587607            case AVATAR_TURN_LEFT       : s.turnLeft = false; s.left=false; break;
    588608            case AVATAR_TURN_RIGHT      : s.turnRight = false; s.right=false; break;
    589609            case AVATAR_SPEED_DOUBLE    : s.doubleSpeed = false; break;
     610            case AVATAR_LOOK_UP     : s.lookUp = false; break;
     611            case AVATAR_LOOK_DOWN   : s.lookDown = false; break;
    590612            case CAMERA_CYCLE           : cycleCamera = false; break;
    591613            case AVATAR_SPEED_ACCELERATE: s.setAccelerate(false); break;
    592614
     
    682704        AVATAR_SPEED_DOUBLE,
    683705        AVATAR_SPEED_ACCELERATE,
    684706
     707    AVATAR_LOOK_UP,
     708    AVATAR_LOOK_DOWN,
     709
    685710        TOGGLE_COLLISION_DETECTION,
    686711        TOGGLE_MAIN_MENUBAR,
    687712
     
    732757            map.put(KeyEvent.VK_Z, Action.AVATAR_STEP_LEFT);
    733758            map.put(KeyEvent.VK_X, Action.AVATAR_STEP_RIGHT);
    734759
     760            map.put(KeyEvent.VK_R, Action.AVATAR_LOOK_UP);
     761            map.put(KeyEvent.VK_F, Action.AVATAR_LOOK_DOWN);
     762
    735763            map.put(KeyEvent.VK_0, Action.AVATAR_RESET);
    736764            map.put(KeyEvent.VK_HOME, Action.AVATAR_RESET);
    737765           
     
    853927    private class Stimulus {
    854928        private float stepSize;
    855929        private float turnRate;
     930        private float lookRate;
    856931        private float acceleration;
    857932
    858933        private boolean forward, backward;
    859934        private boolean left, right;
    860935        private boolean up, down;
    861936        private boolean turnLeft, turnRight;
     937        private boolean lookUp, lookDown;
    862938
    863939        private boolean doubleSpeed;
    864940        private boolean accelerate;
     
    877953        public void set(Stimulus s) {
    878954            stepSize = s.stepSize;
    879955            turnRate = s.turnRate;
     956            lookRate = s.lookRate;
    880957           
    881958            forward = s.forward;
    882959            backward = s.backward;
     
    888965            rotY = s.rotY;
    889966            turnLeft = s.turnLeft;
    890967            turnRight = s.turnRight;
     968            lookUp = s.lookUp;
     969            lookDown = s.lookDown;
    891970        }
    892971       
    893972        public void reset(boolean all) {
    894973            if (all) {
    895974                stepSize = INIT_STEP_SIZE;
    896975                turnRate = INIT_TURN_RATE;
     976        lookRate = INIT_LOOK_RATE;
    897977                acceleration = INIT_ACCELERATION;
    898978            }
    899979
     
    901981            left = right = false;
    902982            up = down = false;
    903983            turnLeft = turnRight = false;
    904            
    905984            doubleSpeed = false;
     985        lookUp = false;
     986        lookDown = false;
    906987        }
    907988        private long accelarateStart = -1;
    908989
     
    914995            return doubleSpeed ? turnRate*2 : turnRate;
    915996        }
    916997
     998    public float getLookRate() {
     999            return doubleSpeed ? lookRate*2 : lookRate;
     1000    }
     1001
    9171002        public float getStepSize() {
    9181003            float ss = stepSize;
Note: See TracBrowser for help on using the repository browser.