Kp
5573ed6bea
Cache font scale X float
2015-06-13 22:42:20 +00:00
Kp
94a86326b5
Use valptr for ogl highest_valid
2015-06-13 22:42:18 +00:00
Kp
0ece005dfa
Use screen_mode for screen resolution
2015-05-14 02:23:13 +00:00
Kp
e592f3a0bb
Inline call to gr_set_mode(0)
2015-05-14 02:23:13 +00:00
Kp
2d9af1e348
Propagate gr_init argument
2015-05-14 02:23:13 +00:00
Kp
7eea02e4f8
Fix paging in wrong texture for homing missiles
2015-05-09 17:39:00 +00:00
Kp
b32298df5a
Rewrite powerup cap code to centralize logic
2015-04-19 04:18:53 +00:00
derhass
1c01698e88
GLES: fix use of uninitialized variables in ogl_texture_stats()
...
Querying GL_INDEX_BITS and GL_DOUBLEBUFFER is not allowed in GLES, so
just use a reasonable default values for both. This is only used to
estimate memory consumption by the framebuffer (which is a questionable
approach in itself, since all those are implementation details not exposed
by the GL, and the actual memory used is likely to be higher anyway).
2015-04-04 23:04:24 +02:00
derhass
49e7cfe37e
GLES: never declare the unused variable gl_draw_buffer
...
Move the declarition directly to the code part where it is used
(always in a #ifndef OGLES block).
2015-04-04 22:58:02 +02:00
Kp
6b6eaef226
Include polyobj.h from robot.h
...
Swap the inclusion order since all robots are polyobjects, but not all
polyobjects are robots.
2015-04-02 02:36:57 +00:00
Kp
16a1fcbb37
Cache g3_draw_bitmap constants
2015-04-02 02:36:56 +00:00
Kp
68241ffbad
Convert g3_draw_bitmap floats to structures
2015-04-02 02:36:56 +00:00
Kp
f71b3fb759
Make dark_lca,bright_lca array<>
2015-04-02 02:36:56 +00:00
Kp
5a4989c86d
Make cross_lva const array<>
2015-04-02 02:36:55 +00:00
Kp
1677d4159c
Make primary_lva const array<>
2015-04-02 02:36:55 +00:00
Kp
b712ae4603
Avoid unnecessary primary_lca initialization
2015-04-02 02:36:55 +00:00
Kp
27f50082f0
Avoid unnecessary cross_lca initialization
2015-04-02 02:36:55 +00:00
Kp
32d99ada2e
Make ret_rgba const array<>
2015-04-02 02:36:55 +00:00
Kp
2a1df52f71
Remove unused g3_draw_bitmap return value
2015-04-02 02:36:54 +00:00
Kp
72d349b0e0
Remove unused g3_draw_sphere return value
2015-04-02 02:36:54 +00:00
Kp
1125a751db
Remove unused g3_draw_poly return value
2015-04-02 02:36:54 +00:00
Kp
c3161d08d5
Remove unused g3_draw_line return value
2015-04-02 02:36:54 +00:00
derhass
639b569496
Merge branch 'unification/master' into unification/syncgl_v2
...
Conflicts:
similar/arch/ogl/gr.cpp
similar/misc/args.cpp
2015-03-23 20:18:17 +01:00
derhass
6d41224638
move GL synchronization code into its own class
2015-03-22 21:19:06 +01:00
derhass
db267af6f2
add basic OpenGL extension handling
...
Currently only used for fence sync objects.
2015-03-22 20:32:14 +01:00
Kp
2b44a352ca
Remove redundant sc_mode
...
sc_mode is a packed copy of sc_w/sc_h. Switch to an accessor that uses
the copy.
2015-03-22 18:49:21 +00:00
Kp
fca381727c
Add wrappers for screen width/height
2015-03-22 18:49:21 +00:00
Kp
8daa014d53
Remove unused gr_check_mode
2015-03-22 18:49:21 +00:00
Kp
6c861b61cd
Move RPI variables to usage site
2015-03-22 18:49:21 +00:00
Kp
f098471e54
Make sdl_video_flags static
2015-03-22 18:49:21 +00:00
Kp
4afeba001a
Move gl_* variables to local scope
2015-03-22 18:49:21 +00:00
Kp
08c0c3768c
Remove unused gr_set_draw_buffer
2015-03-22 18:49:21 +00:00
derhass
2cd73b6dfe
Import the syncgl patch based on 0.58.1 into unification code base
...
I also changed the command line arguments a bit, gl_syncmethod and
gl_sycnwait are used now. Furthermore, I added the ew mode AUTO. This is
a conservative mode and the default for now: if GL_ARB_sync is available,
use the FENCE_SLEEP mode, otherwise, disable it completely.
Conflicts:
include/args.h
misc/args.c
similar/arch/ogl/gr.cpp
2015-03-22 18:17:11 +01:00
Kp
c5f6a115ec
Add <stdexcept> for files that throw std::runtime_error
2015-03-22 04:16:49 +00:00
derhass
a8283a9d45
Merge branch 'unification/master' into unification/rpi
...
Kp already incorporated some small changes I made in my rpi branch into
unification/master. However, besides making the rpi helper functions
static as I did, he also changed the prototype from (void) parameters
to C++ style (). I've incorporated his version here.
Conflicts:
similar/arch/ogl/gr.cpp
2015-03-21 18:02:16 +01:00
derhass
f46e4a2a7c
RPi: use -isystem for the VideoCore library header path
...
Rebirth builds with -Werror=redundant-decls -Werror=undef, which are
triggered by the bcm_host.h. Making gcc treat those paths as
system headers avoids these issues. This was suggested by Kp.
2015-03-21 17:53:13 +01:00
Kp
cf687a9a0a
Make RPi OGL functions static
2015-03-20 03:30:20 +00:00
derhass
c1a38e4433
RPi: Use explicit type casts for DISPMANX_TRANSFORM_T
2015-03-18 21:30:50 +01:00
derhass
7ce066cb8b
GLES/RPi: Declare internal helper functions static
2015-03-18 21:07:57 +01:00
derhass
c23c98562b
GLES: Fix const correctness and for TestEGLError()
2015-03-18 21:05:34 +01:00
Kp
f900d4a5ee
Remove RAIIdmem::operator pointer
...
Mac OS X defines uint_fast32_t to unsigned int, causing ambiguous
overloads between RAIIdmem::operator[](std::size_t) and
RAIIdmem::operator[](int). Adding a disambiguating overload for OS X
breaks Windows. Remove operator pointer and operator[]. Rely on the
inherited operator[] for indexing. Require users to call ->get() to
convert to a simple pointer.
First btb ambiguity reported: https://github.com/dxx-rebirth/dxx-rebirth/pull/34
Second btb ambiguity reported: https://github.com/dxx-rebirth/dxx-rebirth/pull/43
2015-02-17 03:52:59 +00:00
Kp
99a4a0ed62
Capture range_for by-value temporaries as const
...
Modifying a by-value temporary does not affect the underlying container,
so modifying it is almost always a bug. Require use of a by-reference
capture when modification is desired.
sed -i -e 's/range_for\s*(\s*\(const\s\+\)\?auto\s\+\([[:alpha:]_]\)/range_for (const auto \2/g'
2015-02-05 03:03:49 +00:00
Kp
ff4a0ccd70
Fix RAIIdmem array usage
...
Some RAIIdmem instances managed a T[], but were declared to manage a T.
2015-01-28 03:42:53 +00:00
Kp
4a2c9325bb
Fix various uninitialized accesses
2015-01-28 03:42:52 +00:00
Kp
492d6fd996
Remove draw_tmap from OGL build
...
It is only used as a placeholder. Replace it with a number.
Compile out various non-OGL functions when building for OGL.
2015-01-22 03:34:20 +00:00
Kp
bf3bb0b144
Pass uint_fast32_t nverts for texture drawers
2015-01-20 02:46:42 +00:00
Kp
f7815810e8
Use RAIIPHYSFS_File to manage PHYSFS_File
...
Fixes a few leaks on error paths.
2015-01-17 18:31:42 +00:00
Kp
f2797ddf1e
Pass gr_init_canvas arg by &
2015-01-17 18:31:40 +00:00
Kp
15f9d5d3f5
Pass ogl_ubitblt arg by &
2014-12-02 03:35:01 +00:00
Kp
e7aae37c8d
Pass ogl_ubitblt_i arg by &
2014-12-02 03:35:01 +00:00
Kp
130d7a6e52
Pass ogl_loadtexture arg by &
2014-12-02 03:35:01 +00:00
Kp
5e03871f81
Pass tex_set_size arg by &
2014-12-02 03:35:01 +00:00
Kp
818b2c61ed
Pass tex_set_size1 arg as &
2014-12-02 03:35:01 +00:00
Kp
5eddc2c197
Make bitmap bm_data const where easy
2014-12-02 03:24:38 +00:00
Kp
281aed868a
Use range_for on ogl_texture_list
2014-11-30 22:09:20 +00:00
Kp
0236c237ed
Pass ogl_freebmtexture arg by &
2014-11-30 22:09:20 +00:00
Kp
7775b5d7d4
Pass ogl_freetexture arg by &
2014-11-30 22:09:20 +00:00
Kp
486e753a84
Pass ogl_reset_texture arg by &
2014-11-30 22:09:19 +00:00
Kp
a86313e746
Pass ogl_init_texture arg by &
2014-11-30 22:09:19 +00:00
Kp
93565a2d1e
Pass ogl_init_texture_stats arg by &
2014-11-30 22:09:19 +00:00
Kp
0790eda153
Use new/delete for grs_screen
2014-11-30 22:09:19 +00:00
Kp
9aa539c062
Return texmerge_get_cached_bitmap result by &
2014-11-30 22:09:19 +00:00
Kp
166f15617d
Pass ogl_ubitmapm_cs arg by &
2014-11-30 22:09:18 +00:00
Kp
ad3a240958
Pass ogl_ugpixel arg by &
2014-11-30 22:09:18 +00:00
Kp
634f97e8d2
Pass tmap drawer grs_bitmap by &
2014-11-30 22:09:18 +00:00
Kp
f89b57047a
Pass g3_draw_bitmap grs_bitmap by &
2014-11-30 22:09:17 +00:00
Kp
f206b3b127
Reduce inclusion of object.h
2014-11-23 04:36:58 +00:00
Kp
11769c5fc0
Pass draw_tmap* arg as const
2014-11-16 19:14:50 +00:00
Kp
c2d308807c
Make various g3s_point * const
2014-11-15 03:10:06 +00:00
Kp
3a73f2c9d0
Pass g3_draw_line as const
2014-11-15 03:10:04 +00:00
Kp
8e0d85b666
Pass g3_draw_tmap arg by &
2014-11-13 03:44:04 +00:00
Kp
0a97f175df
Pass ogl_loadbmtexture arg by &
2014-11-13 03:43:12 +00:00
Kp
841e037e15
Pass ogl_loadbmtexture_f arg by &
2014-11-13 03:42:41 +00:00
Kp
9baeb31162
Pass rle_end arg by &
2014-11-13 03:41:38 +00:00
Kp
207dceba33
Pass g3_draw_sphere arg by &
2014-11-13 03:22:49 +00:00
Kp
aba13a0bd0
Pass g3_draw_line arg by &
2014-11-13 03:19:52 +00:00
Kp
df6b4bd783
Add vm_vec_rotate that returns result
2014-11-04 01:31:22 +00:00
Kp
5bb9c88979
Add vm_vec_sub that returns result
2014-10-29 03:24:31 +00:00
Kp
fb641b3250
Wrap object iteration idiom
2014-10-12 23:05:46 +00:00
Kp
2434b20445
Pass g3_draw_bitmap pos by const &
2014-10-02 03:02:35 +00:00
Kp
5af79382a5
Pass vm_vec_rotate arg by &
2014-10-01 02:28:42 +00:00
Kp
321bbe37d8
Pass vm_vec_sub arguments by &
2014-09-28 21:11:45 +00:00
Kp
917ca43524
Propagate for variables in similar/arch/ogl/gr.cpp
2014-09-26 02:42:13 +00:00
Kp
703f60ac3f
Fix -Wtype-limits warnings
2014-09-21 21:41:55 +00:00
Kp
5576a65dac
Check length of g3 tmap inputs
2014-09-04 03:02:21 +00:00
Kp
df3f2fe2fe
Simplify ogl/sdl texture mapping
2014-09-02 22:13:15 +00:00
Kp
94550355a8
Use make_unique instead of bare new
2014-08-24 18:28:09 +00:00
Kp
913a095be7
Remove unused return value of g3_draw_tmap
2014-08-16 17:35:44 +00:00
Kp
16d45909b4
Use unique_ptr for OGL texbuf
2014-08-05 02:33:10 +00:00
Kp
11c22409ad
Use unique_ptr for circle_array_init_2
2014-08-05 02:32:55 +00:00
Kp
be86e384b8
Use unique_ptr for circle_array_init
2014-08-05 02:32:35 +00:00
Kp
6abf37539e
Remove unused OGL variable pixels
2014-07-30 03:13:34 +00:00
Kp
d3d457cf19
Pass array<> to gr_list_modes to preserve size information
2014-07-17 03:29:57 +00:00
Kp
256e86b2b6
List initialize grd_curscreen
2014-07-04 03:56:40 +00:00
Matt Vandermeulen
28f307eb85
Fixes #5 - Byteswap header renamed to byteutil, plus sed magic
...
[Kp: switch to #pragma for byteutil.h]
2014-07-03 02:03:08 +00:00
Kp
6222b58bbc
Move uvl_list into g3_draw_rod_tmap
2014-07-01 03:10:56 +00:00
Kp
3abc33d6cc
Optimize gr_rle_decode
2014-06-30 23:56:51 +00:00
zico
ad7cb106bc
Changed custom D1X license to GPLv3
2014-06-01 19:55:23 +02:00
Kp
b9764fb45e
Use array<> for Effects
2014-01-25 17:21:56 +00:00
Kp
8a4c553a8a
Remove needless recomputation of Effects[] pointer
2014-01-25 17:21:56 +00:00
Kp
094dfbf3d4
Reduce header inclusions
2013-12-31 03:22:03 +00:00
Kp
073f00974a
Eliminate uses of the typedef struct X { ... } X; pattern
...
C++ does not require this pattern.
import re, fileinput
to = re.compile(r'^typedef struct ([a-z_A-Z]+)\s*{')
tc = re.compile(r'^}(.*?)\s*([a-z_A-Z]+);$')
osn = None
for line in fileinput.input(inplace=True):
m = to.match(line)
if m:
osn = m.group(1)
print 'struct %s\n{' % osn
continue
if osn:
m = tc.match(line)
if m:
csn = m.group(2)
if osn == csn:
print '}%s;' % m.group(1)
osn = None
continue
else:
osn = None
print line,
2013-12-28 22:48:07 +00:00
Kp
b1c5307eb1
Use array for palette_array_t
2013-12-22 00:37:36 +00:00
Kp
e9f9cb676f
Centralize palette utilities
2013-12-22 00:05:13 +00:00
Kp
a3d66a3b37
Add typedef palette_array_t for palette data
2013-12-22 00:05:13 +00:00
Kp
50b1717ae3
Use common helper to copy and bound palettes
2013-12-22 00:05:13 +00:00
Kp
e4b091dd38
Make ogl_pal a ubyte (*)[256*3] to improve checking
2013-12-20 03:19:40 +00:00
zico
c4f14f1044
Small change in ogl_ulinec to haround up right and bottom properly
2013-12-14 02:34:13 +01:00
Kp
3b9b5ebfb0
Use RAII to manage function-local heap objects
2013-12-08 19:04:52 +00:00
Kp
4d261232c6
Remove useless allocation when saving screenshot
2013-12-08 18:26:19 +00:00
Kp
75c229c6bf
Normalize con_printf newline usage
2013-12-07 21:13:37 +00:00
Kp
e30f548d60
Invert sense of DbgAltTexMerge
2013-11-24 22:57:36 +00:00
Kp
2714679284
Mark private functions static
2013-11-02 04:23:55 +00:00
Kp
b5414edcd0
Fix Win32 OpenGL build
2013-10-26 03:50:27 +00:00
Kp
a6b1bd58a2
Use MALLOC consistently
2013-10-26 03:50:27 +00:00
Kp
5b0c4b10ac
Use accessor for most get/set object->id accesses
2013-10-20 22:49:09 +00:00
Kp
d21b7b7b6e
Explicitly narrow GL floats for C++11
2013-10-09 01:54:12 +00:00
Kp
c58c4e4d06
Move declarations to headers
2013-10-03 03:11:52 +00:00
Kp
b7db46a43a
Switch to std::min
2013-09-15 04:06:07 +00:00
Kp
af52e78a50
Move similar/arch/ogl/ogl.c -> similar/arch/ogl/ogl.cpp
2013-08-24 17:10:35 +00:00
Kp
d909692148
Allow compiler to unroll pow2ize
2013-08-24 16:44:23 +00:00
Kp
20cf3f4cdb
Mark various OGL functions static
2013-08-24 16:44:23 +00:00
Kp
8ef8371563
Use unsigned screen width/height
2013-08-24 16:44:23 +00:00
Kp
b3e2c99b17
Use MALLOC for ogl_init_pixel_buffers
2013-08-20 02:58:15 +00:00
Kp
4e6142d779
Move similar/arch/ogl/gr.c -> similar/arch/ogl/gr.cpp
2013-08-10 03:56:14 +00:00
Kp
f31f74c2e6
Add realloc cast to gr_set_mode
2013-08-07 02:39:43 +00:00
Kp
b81100d54d
Make OGL_VIEWPORT static inline
2013-08-07 02:39:43 +00:00
Kp
1b7c9734ad
Pass unsigned dimensions to write_bmp
2013-08-07 02:39:43 +00:00
Kp
924cc78c43
Use MALLOC for save_screen_shot
2013-08-07 02:39:43 +00:00
Kp
22d006f525
Remove unused function tex_format_supported
2013-08-07 02:33:19 +00:00
Kp
192d9f2178
Remove unused function tex_format_verify
2013-08-07 02:33:19 +00:00
Kp
f26c6fdc66
Remove unused function ogl_atotexfilti
2013-08-07 02:33:18 +00:00
Kp
74bcb86cf4
Remove some const modifiers that broke SDL-only build
2013-07-27 21:29:01 +00:00
Kp
2f4ffebde6
Add const markers to some texture mapping code
2013-07-27 21:28:53 +00:00
Kp
4577dd3977
Merge branch 'd2x-rebirth/master' into unification/master
2013-07-21 21:34:46 +00:00
Kp
a1ba420031
Mark various parameters and variables as const
2013-07-20 23:12:24 +00:00
Kp
012d8e249b
Merge branch d1x-rebirth/master into unification/master
2013-07-19 22:32:28 +00:00
Kp
853713190d
Make ogl_init_load_library static
2013-06-22 21:36:28 +00:00
Kp
b14f7c2f5f
Move */arch/ogl/gr.c -> similar/arch/ogl/gr.c
2013-03-17 23:01:31 +00:00
Kp
3fe3da9a25
Move */arch/ogl/ogl.c -> similar/arch/ogl/ogl.c
2013-03-17 23:01:31 +00:00