Files
wagic/JGE
wagic.jeck d55fc91112 Jeck - [Requires JGE rebuild] Extensive cache improvements.
* Numerous cache fixes, reduced filesystem access.
 * Cache fails very gracefully. 
 * Cache is now a templated class, with individual caches per data-type.
 * Much easier to extend.
 * Extensively debugged. Try compiling with -DDEBUG_CACHE.
 * Caches limits can be set on a per-item basis.
 * hgeParticleSystemInfo are now cached, mana particles now fall back to defaults.
 * Samples are not cached, but track filesystem misses using the cache backbone. 
 * Avatars are cached. Default baka avatar is now baka.jpg, to prevent collision with player.

A note on the retrieval types: 
  RETRIEVE_MANAGE puts a resource into a seperate, managed resource list.
    Managed resources are guarenteed valid for the lifetime of the program. 
    Retrieving a managed quad promotes the associated texture to managed. Don't do that by mistake.
    Calls to Resources.Refresh() will attempt to reload managed resources in place.

  RETRIVE_LOCK (and by extension, RETRIEVE_VRAM), returns a resource after locking it.
    A resource may have many locks, and remains in cache until they are all released. 
    If the resource is managed, it returns it unmodified.

A note on quads:
Unlike all other RetrieveWhatever() functions, the default behavior for RetrieveQuad is RETRIEVE_LOCK. Worse, Release(JQuad*) is slow, and will /always/ release one lock from the associated texture.   

There's a long and complicated explanation for this, involving support for live relinking of textures to existing quads, but basically what it means is that we only use RetrieveQuad for quads we intend to store and later Release(). If a temporary quad is needed, the preferred method is to use NEW JQuad* and SAFE_DELETE with RetrieveTexture(). RetrieveTempQuad is also provided, but is only guaranteed until the next call to the cache.

Note that RetrieveCard has none of these problems.
2009-09-14 08:28:49 +00:00
..
2008-11-02 09:50:16 +00:00
2008-11-02 09:50:16 +00:00
2009-09-03 11:00:21 +00:00
2008-11-02 09:50:16 +00:00
2009-05-18 11:22:53 +00:00
2008-11-02 09:50:16 +00:00
2008-11-19 12:21:23 +00:00
2008-11-02 09:50:16 +00:00
J :
2009-05-23 04:44:44 +00:00
2009-04-12 12:39:44 +00:00
2008-11-02 09:50:16 +00:00
2008-11-02 09:50:16 +00:00
2008-11-02 09:50:16 +00:00
2008-11-02 09:50:16 +00:00

Introduction
------------

JGE++ (Jas Game Engine++) is a hardware accelerated 2D game SDK for PSP. It supports cross-platform development under MS Windows. The entire game development process, including coding, debugging and testing, can be done in Windows. (However, it's still recommended to test your game on PSP from time to time to make sure everything is fine.)

You can use JGE++ to make Windows games but the primary platform is PSP.


Features

    * 1.xx and 3.xx firmware support on PSP.
    * Hardware accelerated 2D rendering including scaling, rotations and colour blending.
    * Animated sprites.
    * Geometry shapes rendering, including rectangle, circle, polygons and thick lines.
    * Loading PNG, JPEG and GIF.
    * Spline.
    * Advanced multiple emitter and key frame based particle system.
    * Bitmap fonts.
    * Chinese GBK fonts.
    * True Type fonts.
    * Stereo WAV playback.
    * Hardware MP3 decoding on PSP.
    * Resource manager.
    * Zipped resource support.
    * Frame based animation system using XML scripts.
    * Basic 3D functions, including support of rendering textured triangles, Quake 2 (MD2) model and OBJ model.
    * Port of HGE helper classes: hgeParticleSystem, hgeDistortionMesh and hgeFont.
    * Input system for English and Chinese.



Project page:
-------------
http://jge.googlecode.com/



Official forums:
----------------
http://jge.khors.com/



To create a new JGE++ project:
------------------------------
Change to "JGE\Tools" in a command prompt and type:

newproject project_name project_description

A project called "project_name" will be created in "JGE\Projects". You can find a VC2005 Express solution file there and you can open it up and start working on your own cool PSP game.



To build JGE++ for PSP:
-----------------------
Change to the JGE directory (say, in a cygwin prompt). 

Do either:

(1) type in "make" or "make 1xx" to build for 1.xx firmware, 
	OR
(2) type in "make 3xx" to build for 3.xx firmware.



To build a project for PSP:
---------------------------
Change to your project directory (say, in a cygwin prompt). Do either:

(1) type in "make" or "make 1xx" to build for 1.xx firmware, 
	OR
(2) type in "make 3xx" to build for 3.xx firmware.



Key mapping on Windows:
-----------------------

PSP                     WINDOWS
==================      ==================
UP/DOWN/LEFT/RIGHT      W/S/A/D
ANALOG CONTROL          UP/DOWN/LEFT/RIGHT
TRIANGLE                I
SQUARE                  J
CIRCLE                  L
CROSS                   K
SELECT                  CTRL
START                   ENTER
HOME                    F1
HOLD                    F2
NOTE                    F3
L                       Q
R                       E



Note for testing on PSP:
------------------------
Please remember to copy the entire folder "bin\Res" into the appropriate folder on PSP.



License:
--------
JGE++ is Licensed under the BSD license, see LICENSE in root folder for details.



Credits:
--------
The JGE++ Team is: 

- James Hui (a.k.a. Dr.Watson)
- Sijiu Duan (a.k.a. Chi80)



Special thanks to:
------------------
- Cheese (WAV playback code)
- Cooleyes (MP3 hardware decoder)
- Fan990099
- Firenonsuch
- Newcreat
- Subelf
- Youmentang
- Jasmine



Contact:
--------
Bugs and comments can be forwarded to jhkhui@gmail.com or sijiu49@gmail.com.
 


History:
--------

[2007.10.22]
- v1.0 released.

[2006.03.26]
- v0.2b released. 
- First version that enabled cross-platform development on Windows by using HGE
- Bundled with SkyAnimator and source code of StarBugz and Mario Demo.

[2006.03.12]
- first public release.
- PSP only.

________________________________________________________________________________________

Copyright (C) 2007 James Hui <jhkhui@gmail.com>
Copyright (C) 2007 Sijiu Duan <sijiu49@gmail.com>