Skip to content

Commit 4da3e7e

Browse files
committed
First commit. Imported google code source
1 parent 7249593 commit 4da3e7e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+40053
-2
lines changed

Diff for: README.md

+22-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,24 @@
1-
opengx
1+
OpenGX
22
======
33

4-
OpenGL-like wrapper for Nintendo Wii/GameCube
4+
OpenGX is an OpenGL-like wrapper which sits on GX subsystem. It implements the most common OpenGL calls such as immediate mode, texturing, array drawing (indexed and not indexed), matrix operations and basic lighting. It features some advanced stuff such as automatic texture compression (ARB extension) and mipmapping. Beware! Some parts are currently NOT opengl compilant (speaking strictly).
5+
TODO list
6+
7+
* Fix lighting transform (which is buggy) and implement spotlights (untested)
8+
* Fix immediate mode to support arbitrary number of glVertex calls
9+
* Add more texture formats and/or add texture format conversion routines
10+
* Add freeglut or some SDL official patch to support context render creation (and remove manual initialization!)
11+
* Fix texture allocation. Now it's mandatory to allocate a texture name using glGen and you can't just bind the texture and use it
12+
* Complete glGet call
13+
* Add support for attribute push/pop
14+
* Add support for glReadPixels and similar calls
15+
* glError ang glGetString: add some error mechanism
16+
17+
List of features (detailed but not exhaustive)
18+
19+
* Texture conversion/compression. Accepts RGB,RGBA,COMPRESSED_RGBA and LUMINANCE_ALPHA.
20+
* Matrix math stuff including glu calls
21+
* Texture mipmapping (and gluBuildMipMaps)
22+
* Ambient and diffuse lighting. Looking forward to enable specular too. But note that 3 modes can't be used at the same time (HW restriction)
23+
* Indexed and not indexed draw modes
24+
* Blending support

Diff for: doc/opengx.pdf

703 KB
Binary file not shown.

Diff for: extlib/include/SDL/SDL.h

+94
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
/*
2+
SDL - Simple DirectMedia Layer
3+
Copyright (C) 1997-2009 Sam Lantinga
4+
5+
This library is free software; you can redistribute it and/or
6+
modify it under the terms of the GNU Lesser General Public
7+
License as published by the Free Software Foundation; either
8+
version 2.1 of the License, or (at your option) any later version.
9+
10+
This library is distributed in the hope that it will be useful,
11+
but WITHOUT ANY WARRANTY; without even the implied warranty of
12+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13+
Lesser General Public License for more details.
14+
15+
You should have received a copy of the GNU Lesser General Public
16+
License along with this library; if not, write to the Free Software
17+
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18+
19+
Sam Lantinga
20+
21+
*/
22+
23+
/* Main include header for the SDL library */
24+
25+
#ifndef _SDL_H
26+
#define _SDL_H
27+
28+
#include "SDL_main.h"
29+
#include "SDL_stdinc.h"
30+
#include "SDL_audio.h"
31+
#include "SDL_cdrom.h"
32+
#include "SDL_cpuinfo.h"
33+
#include "SDL_endian.h"
34+
#include "SDL_error.h"
35+
#include "SDL_events.h"
36+
#include "SDL_loadso.h"
37+
#include "SDL_mutex.h"
38+
#include "SDL_rwops.h"
39+
#include "SDL_thread.h"
40+
#include "SDL_timer.h"
41+
#include "SDL_video.h"
42+
#include "SDL_version.h"
43+
44+
#include "begin_code.h"
45+
/* Set up for C function definitions, even when using C++ */
46+
#ifdef __cplusplus
47+
extern "C" {
48+
#endif
49+
50+
/* As of version 0.5, SDL is loaded dynamically into the application */
51+
52+
/* These are the flags which may be passed to SDL_Init() -- you should
53+
specify the subsystems which you will be using in your application.
54+
*/
55+
#define SDL_INIT_TIMER 0x00000001
56+
#define SDL_INIT_AUDIO 0x00000010
57+
#define SDL_INIT_VIDEO 0x00000020
58+
#define SDL_INIT_CDROM 0x00000100
59+
#define SDL_INIT_JOYSTICK 0x00000200
60+
#define SDL_INIT_NOPARACHUTE 0x00100000 /* Don't catch fatal signals */
61+
#define SDL_INIT_EVENTTHREAD 0x01000000 /* Not supported on all OS's */
62+
#define SDL_INIT_EVERYTHING 0x0000FFFF
63+
64+
/* This function loads the SDL dynamically linked library and initializes
65+
* the subsystems specified by 'flags' (and those satisfying dependencies)
66+
* Unless the SDL_INIT_NOPARACHUTE flag is set, it will install cleanup
67+
* signal handlers for some commonly ignored fatal signals (like SIGSEGV)
68+
*/
69+
extern DECLSPEC int SDLCALL SDL_Init(Uint32 flags);
70+
71+
/* This function initializes specific SDL subsystems */
72+
extern DECLSPEC int SDLCALL SDL_InitSubSystem(Uint32 flags);
73+
74+
/* This function cleans up specific SDL subsystems */
75+
extern DECLSPEC void SDLCALL SDL_QuitSubSystem(Uint32 flags);
76+
77+
/* This function returns mask of the specified subsystems which have
78+
been initialized.
79+
If 'flags' is 0, it returns a mask of all initialized subsystems.
80+
*/
81+
extern DECLSPEC Uint32 SDLCALL SDL_WasInit(Uint32 flags);
82+
83+
/* This function cleans up all initialized subsystems and unloads the
84+
* dynamically linked library. You should call it upon all exit conditions.
85+
*/
86+
extern DECLSPEC void SDLCALL SDL_Quit(void);
87+
88+
/* Ends C function definitions when using C++ */
89+
#ifdef __cplusplus
90+
}
91+
#endif
92+
#include "close_code.h"
93+
94+
#endif /* _SDL_H */

Diff for: extlib/include/SDL/SDL_active.h

+58
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
/*
2+
SDL - Simple DirectMedia Layer
3+
Copyright (C) 1997-2009 Sam Lantinga
4+
5+
This library is free software; you can redistribute it and/or
6+
modify it under the terms of the GNU Lesser General Public
7+
License as published by the Free Software Foundation; either
8+
version 2.1 of the License, or (at your option) any later version.
9+
10+
This library is distributed in the hope that it will be useful,
11+
but WITHOUT ANY WARRANTY; without even the implied warranty of
12+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13+
Lesser General Public License for more details.
14+
15+
You should have received a copy of the GNU Lesser General Public
16+
License along with this library; if not, write to the Free Software
17+
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18+
19+
Sam Lantinga
20+
21+
*/
22+
23+
/* Include file for SDL application focus event handling */
24+
25+
#ifndef _SDL_active_h
26+
#define _SDL_active_h
27+
28+
#include "SDL_stdinc.h"
29+
#include "SDL_error.h"
30+
31+
#include "begin_code.h"
32+
/* Set up for C function definitions, even when using C++ */
33+
#ifdef __cplusplus
34+
extern "C" {
35+
#endif
36+
37+
/* The available application states */
38+
#define SDL_APPMOUSEFOCUS 0x01 /* The app has mouse coverage */
39+
#define SDL_APPINPUTFOCUS 0x02 /* The app has input focus */
40+
#define SDL_APPACTIVE 0x04 /* The application is active */
41+
42+
/* Function prototypes */
43+
/*
44+
* This function returns the current state of the application, which is a
45+
* bitwise combination of SDL_APPMOUSEFOCUS, SDL_APPINPUTFOCUS, and
46+
* SDL_APPACTIVE. If SDL_APPACTIVE is set, then the user is able to
47+
* see your application, otherwise it has been iconified or disabled.
48+
*/
49+
extern DECLSPEC Uint8 SDLCALL SDL_GetAppState(void);
50+
51+
52+
/* Ends C function definitions when using C++ */
53+
#ifdef __cplusplus
54+
}
55+
#endif
56+
#include "close_code.h"
57+
58+
#endif /* _SDL_active_h */

0 commit comments

Comments
 (0)