Download presentation
Presentation is loading. Please wait.
Published byLandon Sawyer Modified over 10 years ago
1
JPWorld A 3D graphical interface for JaM2 Introduction to Empirical Modelling Introduction to Java3D Merging JaM2 & Java3D Sasami & an overview of my Project Conclusions Talking time: 10 minutes
2
Empirical Modelling, Eden and JaM2 Empirical Modelling defining dependencies between objects in world. Spreadsheet A is B + C Lamp is half way along table Eden Dependency maintainer. Several add-ons Ben Carters Sasami Richard Carwrights JaM2 A Java dependency maintainer Maintains Java objects Fig1 (Empirical Modelling Web Page)
3
JaM2 Maintains dependencies between Java objects Can implement any ADT through JaM2 Types JaM2 Parameter Sets JaM2 Operators The JaM2 machine & the Script Stores dependencies Register Types & Operators Parse & code Java Code Public void operator( ) { script. add-Operator() script. dependency() enumeration e = true ; while( false ) { foo } } Parser a is 2.0 ; b is 3.0 ; c is b + a ; update; b is 1.0 ; update; Script edits ParameterSetTypeOperation contains maintains registers with
4
Java3D Structure Virtual Universe Root of scene Locale Branch Group Transform Group Transform3D Rotation & translation Shape3D Triangle Strip Array colour Behaviours Virtual Universe BG TG S Locale Camera B DB Fig 2 Adapted from Suns Java3D Tutorial)
5
Merging JaM2 & Java3D Motivation Allow dependencies to be viewed in 3D. Types & Operators Vertex Colour Location Rotation makeVertex Polygon 1 colour vertex n component vertices makePolygon Object 1 location vertex 1 rotation vertex n component polygons makeObject Camera eye, centre & up makeCamera Object Polygon Location Rotation Colour v1 v3 v2v4 Vertex
6
The Sasami/JPWorld architecture Eden Eden Code Viewport 640 480 Open_display Bycolour 0 0.6 1 Sasami_show_axis =0 ; Sasami Renderer Parser Update Handler Scene Database User Interface Sasami Code Load_obj sm_red_ball ; #this creates a ball Load_obj sm_blue_ball 3D display JaM2 JaM2 Code a is 1.0 ;; b is 2.0 c is 3.0 ; v is makeVertex(a,b,c) ; Update; Server3D Joystick Clock Add-ons Parser 3D Client 1 3D Client n Sasami JPWorld
7
The Server3D and 3D dependencies Server3D A database of 3D object dependencies stores current values of 3D objects 3D Objects Polygons, Objects, Vertices Maintain network connection to Server3D Inform of creation Inform of update No delete (JaM2) ScriptServer3D + shape DB 3D Object maintaininform
8
The Server3D and Clients Server3D Also stores DB of clients to update Updates clients when shape DB changes Clients Dependency based Can be named View world from camera of same name As many clients as needed. Uses Java3D Inputs Start Script with support Steering wheel writes xpos, ypos every 0.1s Clock updates time every 0.25s update Client Server3D inform
9
Conclusion Initial project A dependency based car-parking simulator with multiple views and a steering wheel Could not be done Now it can I have implemented a dependency based 3D world modeller using JaM2 & Java3D I have Really enjoyed making it Learned a lot (JaM2, Java3D, RMI …) Any Questions?
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.