release_notes.txt 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. aMaze
  2. =====
  3. aMaze is a 3D maze game for Nokia Asha software platform and Series 40 full
  4. touch phones. This Nokia example game demonstrates the use of Mobile 3D Graphics
  5. API, gestures, and accelerometer sensor. The concept of the game is classic and
  6. simple: guide the marble through the maze by tilting the phone until the time
  7. runs out. The gestures utilised in the game are pinch-to-zoom and double tap.
  8. This example application is hosted in Nokia Developer Projects:
  9. - https://projects.developer.nokia.com/amaze
  10. - https://projects.developer.nokia.com/amaze/wiki
  11. What's new in version 1.1
  12. -------------------------
  13. - Nokia Asha software platform 1.0 support added.
  14. - Game speed better normalised for phones with different processing capacity.
  15. - Minor performance improvements.
  16. - GameModel and InteractionManager classes removed and their implementation was
  17. merged to MazeCanvas.
  18. - Some bug fixes.
  19. 1. Project structure and implementation
  20. -------------------------------------------------------------------------------
  21. 1.1 Folders
  22. -----------
  23. | The root folder contains the project files, the Application
  24. | Descriptor file, the license information and this file
  25. | (release notes).
  26. |
  27. |- binaries Contains the installable binaries.
  28. |
  29. |- res Contains the application resources (e.g. graphics assets).
  30. |
  31. |- src Contains the application source code.
  32. 1.2 Important files and classes
  33. -------------------------------
  34. Note that some files/classes are omitted from the following tree.
  35. src/ com.nokia.example.amaze
  36. |- Main.java...........................The MIDlet main class.
  37. |- SplashScreen.java...................The splash screen implementation.
  38. |
  39. |- com.nokia.example.amaze.gestures
  40. | |- SafeGestureInteractiveZone.java......The rectangle where the gestures are
  41. | | recognised.
  42. | |- SafeGestureListener.java.............The interface for gesture listeners.
  43. | |- SafeGestureRegistrationManager.java..The intelligent manager for
  44. | registering gesture listeners.
  45. |
  46. |- com.nokia.example.amaze.model
  47. | |- MarbleModel.java.................The model of the marble.
  48. | |- Maze.java........................The model of the maze.
  49. | |- MyTimer.java.....................A generic, easy-to-use timer.
  50. |
  51. |- com.nokia.example.amaze.sensors
  52. | |- AccelerationProvider.java........The interface that provides
  53. | | accelerometer sensor readings.
  54. | |- AccelerationProviderImpl.java....The actual implementation of the
  55. | accelerometer sensor readings provider.
  56. |
  57. |- com.nokia.example.amaze.ui
  58. | |- CameraAnimator.java..............A utility class for camera animations.
  59. | |- DoubleTapDetector.java...........Listens to touch events and notifies the
  60. | | listener if a double tap event is
  61. | | detected.
  62. | |- MazeCanvas.java..................The game view that ties everything
  63. | | together. The view also acts as the game
  64. | | engine running the main loop. All the
  65. | | touch interaction and command handling
  66. | | is implemented in this class.
  67. | |- Menu.java........................A generic menu with support for
  68. | | customisable menu items.
  69. | |- WorldBuilder.java................Contains the methods for creating the
  70. | game levels.
  71. 1.3 Used J2ME and Nokia UI API classes
  72. --------------------------------------
  73. Note: Some, less meaningful packages and classes omitted.
  74. - javax.microedition.lcdui
  75. - Canvas
  76. - Display
  77. - Displayable
  78. - Font
  79. - Graphics
  80. - Image
  81. - javax.microedition.lcdui.game
  82. - GameCanvas
  83. - javax.microedition.m3g
  84. - Appearance
  85. - Background
  86. - Camera
  87. - Graphics3D
  88. - Mesh
  89. - Node
  90. - RayIntersection
  91. - Transform
  92. - World
  93. - com.nokia.mid.ui
  94. - DeviceControl
  95. - com.nokia.mid.ui.orientation
  96. - Orientation
  97. - OrientationListener
  98. 2. Compatibility
  99. -------------------------------------------------------------------------------
  100. Compatible with Nokia Asha software platform 1.0 and Series 40 full touch
  101. phones. Developed with Nokia Asha SDK 1.0. Tested with Nokia Asha 501, 311 and
  102. 306.
  103. 2.1 Known issues
  104. ----------------
  105. - The performance is satisfactory only with Nokia 311.
  106. - Collision detection is not perfect:
  107. - Sometimes the marble gets momentarily stuck on the edges of maze walls.
  108. - Sometimes the marble can pass through maze walls.
  109. - Only partial landscape support implemented.
  110. - No sound effects implemented.
  111. 3. Building, installing, and running the application
  112. -------------------------------------------------------------------------------
  113. 3.1 Preparations
  114. ----------------
  115. Check that you have Nokia Asha SDK 1.0 installed.
  116. 3.2 Packaging the application using Nokia Asha SDK 1.0
  117. ------------------------------------------------------
  118. You cannot install the application on the device with the IDE, but you can
  119. package the application: After you have imported the project, locate the
  120. Application Descriptor in the Package Explorer window and open it. Open the
  121. Overview tab (by default it is the first tab on the left) and click Create
  122. package. Select the destination directory and click Finish.
  123. 3.3 Installing application binary to phone
  124. ------------------------------------------
  125. Connect the phone to the computer with USB cable or Bluetooth. Locate the
  126. application binary (.jar file). Copy the file to your phone, locate it and tap
  127. to install. With Series 40 phone you can install the file using Nokia Suite:
  128. Drag the file from the file explorer on top of the connected phone image in the
  129. Nokia Suite window.
  130. After the application is installed, locate the application icon from the
  131. application menu and launch the application by selecting the icon.
  132. 4. License
  133. -------------------------------------------------------------------------------
  134. See the license text file delivered with this project. The license file is also
  135. available online at
  136. https://projects.developer.nokia.com/amaze/browser/amaze/trunk/Licence.txt
  137. 5. Related documentation
  138. -------------------------------------------------------------------------------
  139. - Getting started with Mobile 3D Graphics API:
  140. - http://www.oracle.com/technetwork/systems/3dgraphics-155829.html
  141. 6. Version history
  142. -------------------------------------------------------------------------------
  143. 1.1 Nokia Asha software platform 1.0 optimisation
  144. 1.0 Initial release