Tobias Zwick
b032bb087c
hotfix: engine compiles again
2010-03-03 15:54:45 +01:00
Nicolas Hake
ad1b75a071
Mesh loader: Suppress complaints about some chunks we don't care about
...
Ignores CID_Submesh_Name_Table and CID_Edge_List.
2010-03-02 22:48:44 +01:00
Nicolas Hake
f2d1e1e871
Mesh loader: Fix 64bit linux and correctly read colors
2010-03-02 22:48:42 +01:00
Armin Burgmeier
6de92499e6
Fix compilation with MinGW
2010-03-02 18:56:18 +01:00
Nicolas Hake
11e9f3235b
Prefer loading meshes from binary format
...
This implements a loader for Ogre's binary mesh format. Loading times
are vastly superior to the TinyXML parser. If no binary mesh exists,
the loader will fall back to parsing XML.
This changeset introduces a dependency on the Boost libraries.
2010-03-02 17:12:28 +01:00
Nicolas Hake
0b137e8cd5
msvc: Build fixes for x64 compatibility
...
I don't know whether it works, because I don't have 64 bit libraries at the
moment. But at least the syntax errors are gone.
2010-02-27 14:48:01 +01:00
Martin Plicht
b84561075e
Fix Some C4GamePadControl compiler errors when compiling with SDL
2010-02-24 16:49:00 +01:00
Sven Eberhardt
c882b3ba9b
send perioic gamepad axis change callbacks even if direction didn't change
2010-02-24 00:34:25 +01:00
Sven Eberhardt
dda34d3897
send perioic gamepad axis change callbacks even if direction didn't change
2010-02-24 00:18:07 +01:00
Richard Gerum
3a18f4d41f
added throw animation
2010-02-23 19:51:29 +01:00
Sven Eberhardt
25e5279c0d
implement gamepad axis strength parameter in player controls
...
lowered axis threshold to 20%
2010-02-23 17:53:38 +01:00
Sven Eberhardt
526158dfe3
fix input binding fallbacks ( #158 )
...
compile fix
2010-02-23 00:35:06 +01:00
Günther Brammer
86b1ff47e6
Clean the windowed mode configuration switch
...
Instead of doing the resolution switch deep inside the OpenGL initialisation
code, the Application does it on startup, and the code responsible for
runtime resolution switches is responsible for the resolution-dependant
initialisations.
Unfortunately, the D3D code uses two different but similar pieces of code
for both cases, which need to be merged.
2010-02-18 21:19:04 +01:00
Günther Brammer
f7a7dd41d1
Remove blitoffset option
...
It's only use was to compensate for the 0.5 pixel offset d3d applies to
everything. Do that directly in d3d specific code instead.
2010-02-18 21:11:14 +01:00
Günther Brammer
5c37e0e236
Remove manual clipping
...
A complicated workaround for obsolete hardware.
2010-02-18 17:26:01 +01:00
Günther Brammer
52b6028a2a
Remove NoAlphaAdd, PointFiltering, AdditiveBlits, NoBoxFades and GLKeepRes
...
These were workarounds for limitations of obsolete hardware.
2010-02-18 17:24:43 +01:00
Martin Plicht
16c4173d66
Mac: Use stringWithUTF8String instead stringWithCString
2010-02-19 15:42:24 +01:00
Martin Plicht
1063dbf413
Mac: Include MacUtility.h in OpenURL.cpp
2010-02-19 13:52:35 +01:00
Günther Brammer
ff8d950e85
Remove C4ENGINE define
...
Most files using it weren't used by c4group-the-application anymore, and
the remaining stuff can be dealt with by using stubs or the same code in
both cases.
2010-02-17 22:59:46 +01:00
Günther Brammer
fd07c9e385
Fix SDLApp
2010-02-17 23:00:01 +01:00
Günther Brammer
a16df97a95
Various cleanups in the platform code
2010-02-16 02:54:02 +01:00
Richard Gerum
1f889a6e06
changed scale system (all modells now use the scale they had in blender) and rexported all meshes with new scale
2010-02-13 20:57:57 +01:00
Peter Wortmann
1aff82edb7
Quick test scenario for 50% Clonk.
2010-02-12 19:08:05 +01:00
Peter Wortmann
2f2065f456
Add missing file for Mac OS X build instead of defining stubs [Günther]
2010-02-11 14:19:13 +01:00
Sven Eberhardt
15713eabb3
loam bridge retain IFT and dont draw over higher density ( #85 , #125 )
2010-02-09 20:09:32 +01:00
Peter Wortmann
0335b9133a
Activated some stubs for SDL port. Someone should implement them in future, but for now it should at least compile.
2010-02-09 19:05:27 +01:00
Armin Burgmeier
3aa9030340
Fix keyframe translation once more
2010-02-07 14:54:53 +01:00
Armin Burgmeier
406dc7c734
Implement perspective rendering
2010-02-06 18:33:30 +01:00
Armin Burgmeier
958c0fce60
Fix crash when setting invalid animation position via SetAnimationPosition
2010-02-06 11:34:53 +01:00
Armin Burgmeier
3fc5ec0cb7
Use FIXED for animation position and weight, to fix desync while hangling
2010-02-02 19:25:51 +01:00
Sven Eberhardt
6f7111cb52
reset GL texture coordinate source after mesh rendering (fix crash at game end)
2010-01-30 18:56:11 +01:00
Armin Burgmeier
bb28160406
Allow attaching an object's mesh instance, add SetAttach{Bones,Transform}
2010-01-29 22:18:18 +01:00
Armin Burgmeier
5101d10e37
Added cull_hardware setting to material scripts, make bow string visible
...
By not culling it. See Bug #120 .
2010-01-29 15:58:33 +01:00
Armin Burgmeier
18c7855bb6
Fixed two crashes in the animation code
2010-01-27 22:03:26 +01:00
Armin Burgmeier
5131dea942
Make animations of attached meshes actually work
2010-01-27 21:03:24 +01:00
Armin Burgmeier
6d1be45a79
Buildfix
2010-01-27 21:02:37 +01:00
Nicolas Hake
b3a3a045b6
Remove StdMesh.h from StdDDraw2.h, use fwd declarations
2010-01-27 16:50:07 +01:00
Sven Eberhardt
bfe0baa299
fix a few memleaks+unnecessary reinitializations of fonts
2010-01-26 22:47:40 +01:00
Armin Burgmeier
8b3eb2b30e
Allow attached meshes to use an arbitrary transformation ( #116 )
2010-01-26 22:42:12 +01:00
Sven Eberhardt
692c5a053d
fix MSVC9 build
2010-01-26 19:35:15 +01:00
Armin Burgmeier
fe46b31c04
Fix mesh display problems ( #109 )
2010-01-26 17:17:43 +01:00
Armin Burgmeier
47ea7af718
Move change-of-basis to StdGL, fixing the lighting
2010-01-26 15:28:32 +01:00
Benjamin Herr
d373e8b317
Fixed mesh/mesh material loading for non-english locales
2010-01-26 00:55:48 +01:00
Benjamin Herr
f3b35227ea
avoid lots of gcc warnings
2010-01-25 05:00:59 +01:00
Armin Burgmeier
3ef547e58a
Fix the build on Linux
2010-01-25 20:17:29 +01:00
Nicolas Hake
be39732a8f
Implemented fixed ordering in DirectoryIterator
...
This should alleviate loading order differences from different
OSes somewhat. Since the iterator currently employs a lexicographic
ordering, there are probably still problems when one player has
their packages unpacked, while another one has theirs packed.
This should go away once we employ a sane format for game packages.
2010-01-25 16:54:38 +01:00
Nicolas Hake
1966f3a848
#104 : Allow unanimated meshes
2010-01-24 04:27:27 +01:00
Nicolas Hake
b1f0c3e1c6
Remove a49cc8f3de41 and add more solid fix
2010-01-24 02:48:55 +01:00
Nicolas Hake
40babd09e3
Build fix for MSVC2010
...
I think this is a compiler bug, because the standard specifies
std::list::insert to be not a template member, so it should never
accept int as value
2010-01-23 19:12:15 +01:00
Richard Gerum
19626dc16a
added sword and sword animation
2010-01-23 16:20:22 +01:00
Armin Burgmeier
3b7344dbf7
Give higher-numbered animation slots higher priority, not vice-versa
2010-01-23 14:15:56 +01:00
Armin Burgmeier
98c59540a7
Fix crash when removing th last animation in a slot ( #103 )
2010-01-23 12:52:31 +01:00
Armin Burgmeier
5dcf92121d
Introduce animation stack, adapt existing scripts
2010-01-22 19:27:02 +01:00
Armin Burgmeier
17635ae44c
Error out correctly in case glew cannot be initialized
2010-01-12 21:53:47 +01:00
Armin Burgmeier
e077b92b36
Added depth_write material script option
2010-01-12 21:30:36 +01:00
Nicolas Hake
7e99bb5b6a
Font rendering: Avoid relocking textures at preload
2010-01-12 19:54:51 +01:00
Armin Burgmeier
7556bc36eb
Support multiple submeshes
2010-01-12 00:54:36 +01:00
Armin Burgmeier
d844fd8e63
Added possibility to attach meshes to each other
2010-01-10 22:02:40 +01:00
Armin Burgmeier
c56dcffb2a
Fix change of basis for keyframe transformations
2010-01-08 20:21:01 +01:00
Armin Burgmeier
1bfb6b56ba
Merge mesh into default
2010-01-06 02:36:49 +01:00
Armin Burgmeier
6adc3a5c3e
Only sort faces if an object is drawn transparent
2010-01-06 02:28:49 +01:00
Armin Burgmeier
8abe97a6b4
Update bone transformation matrices and vertex data at most once per frame
2010-01-06 02:11:56 +01:00
Armin Burgmeier
b3e958f144
Renormalize rotational part of transformation
2010-01-05 22:35:30 +01:00
Armin Burgmeier
975235b977
Apply bone transformation in Clonk's coordinate system to keyframe translation
2010-01-05 17:40:45 +01:00
Armin Burgmeier
b12966d8da
Removed superfluous comment
2010-01-05 17:20:55 +01:00
Armin Burgmeier
4f030f3a4b
Added more math functions, some cleanup
2010-01-05 17:20:46 +01:00
Sven Eberhardt
a0daa20466
add C4Include.h to StdMeshMaterial.cpp
2010-01-04 03:24:40 +01:00
Sven Eberhardt
652481f6a1
MSVC: exclude precompiled headers from tinyxml sources
2010-01-04 03:15:50 +01:00
Armin Burgmeier
9326b94adb
Implement simple color operations in terms of the extended ones
...
The special implementation was wrong, and we need GL_COMBINE at least for
colour_op alpha_blend anyway. This fixes the tool workshop being rendered in
the player's color.
2010-01-04 02:33:45 +01:00
Armin Burgmeier
fb95c3af2e
Merge mesh into default
2010-01-04 01:10:31 +01:00
Armin Burgmeier
d84b3c9038
Support texture blending operations, add player color to clonk material
2010-01-03 23:58:26 +01:00
Armin Burgmeier
6deb3e9320
Skip comments in material scripts
2010-01-03 23:52:09 +01:00
Sven Eberhardt
3ac6dd25cd
fix mesh build for MSVC
2010-01-02 19:40:32 +01:00
Günther Brammer
4f08312df7
Script: Music() no longer overwrites the music settings of the user
...
If you want to stop music, you need to use SetPlayList() with a nonempty
playlist which matches no music files, " " is usually a good choice.
2010-01-02 17:33:58 +01:00
Armin Burgmeier
1682dc3f78
(Mostly) honor tex_address_mode, tex_border_colour and filtering
...
Also don't load materials which produced an error while loading
2010-01-02 03:26:47 +01:00
Armin Burgmeier
56ad75ce73
Load tex_address_mode, tex_border_colour and filtering from material scripts
2010-01-01 22:20:17 +01:00
Armin Burgmeier
38a225abaa
Enable backface culling
2010-01-01 16:03:56 +01:00
Armin Burgmeier
394e023bbb
Fix alpha blending; use glInterleavedArrays
2010-01-01 15:26:54 +01:00
Armin Burgmeier
6bc38aa01b
Compute inverse CoordCorrection matrix directly
2009-12-31 18:18:58 +01:00
Armin Burgmeier
da17b5a82d
Apply bone translation in keyframes correctly
2009-12-31 16:25:22 +01:00
Tobias Zwick
25c670041b
buildfix
2009-12-31 02:48:43 +01:00
Armin Burgmeier
e66de9ba49
Fix the debug build
2009-12-30 23:13:31 +01:00
Armin Burgmeier
7c5619646c
Allow a mesh to play multiple animations at the same time
2009-12-30 21:41:56 +01:00
Armin Burgmeier
6c00302928
Skip preanimate step; compute transformations in realtime
...
This allows multianimations, and does not suffer from child bones being
animated at a higher resolution than parent bones
2009-12-30 17:47:55 +01:00
Armin Burgmeier
1f1c7902c3
Reset texture matrices before rendering a texturized mesh
2009-12-29 18:37:28 +01:00
Günther Brammer
75ae48f984
OpenGL: Cleanups
2009-10-26 00:05:16 +01:00
Günther Brammer
e592ca643c
Move prototypes back to C4Prototypes.h
2010-01-02 01:19:42 +01:00
Günther Brammer
d4cb25cf39
Reorganize C4Include.h and Standard.h
...
All plattform stuff is now in Standard.h, while C4Include.h just includes
a bunch of headers. Mostly headers from the standard library, because
those change very seldom.
Also remove the ptrdiff_t typedef, properly include <cstddef> instead.
2010-01-02 01:11:54 +01:00
Sven Eberhardt
8b4006da08
fix scheduler blocking by unblock proc
2009-12-31 18:10:55 +01:00
Sven Eberhardt
eee6c4ac4d
fix interactive thread
2009-12-31 17:01:45 +01:00
Tobias Zwick
edec15d64f
merge
2009-11-30 17:24:14 +01:00
Nicolas Hake
83a1402c21
win32/gl: Window border hidden in plr mode only
...
Maybe it's a good idea to not hide the border of developer mode windows.
2009-11-04 23:11:21 +01:00
Nicolas Hake
89749eee5a
win32/gl: Enable switch to fullscreen in debug builds also
...
Furthermore, I've disabled the window frame while rendering with GL, because
switching from fullscreen to a window with a border and title bar tries to
draw under the border instead of in the client area only. I'm fully aware
this is a hackaround, but if you're using Windows and OpenGL while NOT
testing the mesh branch, it's your own fault.
2009-11-02 16:49:37 +01:00
Nicolas Hake
0dc14ae40e
win32: Unbreak fmod, remove MCI
...
USE_FMOD define renamed to HAVE_FMOD to bring it in line with HAVE_SDL_MIXER.
MCI removed since nobody was using it anyway, and half of its functions were
stubs.
2009-11-02 14:18:47 +01:00
Nicolas Hake
4bda27997c
win32: Allow windowed mode
...
Frontend dialogs aren't resized since they would have to be destroyed
and re-created in the current implementation; this should change to an
auto-layouter as in other widget toolkits.
This is an OS independent problem though.
2009-10-23 03:53:16 +02:00
Armin Burgmeier
49e607bab0
Added includes and forward declarations, fixing the build
2009-10-26 00:09:34 +01:00
Günther Brammer
cb01137562
X11: Be more careful regarding input
...
Also, use Xutf8LookupString instead of XmbLookupString and iconv.
2009-10-23 01:47:03 +02:00
Günther Brammer
442d5b2c58
X11: Flush requests after event processing
...
This fixes the "window manager thinks Clonk has hung" problem.
http://bugs.openclonk.org/view.php?id=3
2009-10-24 01:35:46 +02:00
Nicolas Hake
8476695d25
#36 : win32/opengl: Notify gfx engine about res change
...
In debug builds, CStdGL didn't get notified about the new resolution when it
was changed at runtime, so the GUI assumed the old resolution to be still in
effect.
2009-10-23 00:04:49 +02:00
Nicolas Hake
52bde5a579
Remove BIG_C4INCLUDE define
2009-10-20 06:21:12 +02:00
Nicolas Hake
f0fdf5e992
Prepare for precompiled headers
2009-10-20 05:39:24 +02:00
Nicolas Hake
7b2d506869
Remove unused DInput/DSound code
2009-10-20 04:33:05 +02:00
Armin Burgmeier
ab7890a307
Fixed the build on Linux
2009-10-15 23:43:29 -04:00
Sven Eberhardt
87e0548bd0
PrefControl switched to new player control method
2009-10-14 18:46:22 +02:00
Richard Gerum
0dac409510
merged default into mesh
2009-10-14 16:42:23 +02:00
Nicolas Hake
314e106dbf
#40 : win32: Fix message filtering in StdScheduler
...
StdScheduler used a message filter that didn't match the messages that
using the task switcher generated, so it always waited for an input
or timer message before dispatching.
2009-10-14 01:41:27 +02:00
Sven Eberhardt
8098b31bce
player control init: fallback to existing control sets if selected control set not found
2009-10-13 22:02:44 +02:00
Tobias Zwick
025eec0e78
merge
2009-10-11 21:57:31 +02:00
Tobias Zwick
f584896446
merge
2009-10-08 20:51:31 +02:00
Armin Burgmeier
d8950094d8
DirectoryExists: Return true for the root directory ("/")
2009-09-22 22:09:13 -04:00
Nicolas Hake
97d7e483aa
D3D: Fix box drawing
...
Wrong blending mode led to a black background in text boxes
2009-09-22 12:43:54 +02:00
Nicolas Hake
8f7d3781e0
Applied alpha changes to D3D
2009-09-21 20:52:40 +02:00
Armin Burgmeier
778ec7278f
Merged default into mesh
2009-09-19 13:13:10 -04:00
Armin Burgmeier
809c2234cd
Merged alphafix into default
...
This reverts the meaning of alpha components everywhere in engine and script.
alpha=0 means transparent, and alpha=255 means opaque.
2009-09-19 12:08:09 -04:00
Armin Burgmeier
38e6fa6022
Allow all supported image formats for mesh textures
2009-09-15 22:42:13 -04:00
Armin Burgmeier
0fea47bed3
Don't use texture reserved for FoW for mesh texturing
2009-09-11 21:11:54 -04:00
Armin Burgmeier
fe34708fd6
mesh: Implement texturing
...
We really need a proper way to handle lighting. The current way is way too
random and just chosen so that the objects I'm testing with look good.
2009-09-09 22:54:12 -04:00
David Dormagen
a886a18180
replaced remaining TRUE and FALSE (both are invalid now)
2009-09-05 19:22:54 +02:00
Sven Eberhardt
4407fb040a
merge
2009-08-29 23:12:31 +02:00
Günther Brammer
95b4738d66
Fix mesh loading when the locale is not using . as decimal separator
...
This uses glibs g_ascii_strtod like the DrawTransform loader.
Engines without glib will need another solution, probably using
the C locale for numbers.
2009-08-29 17:56:47 +02:00
Günther Brammer
8b04b547c1
OpenGL: Fix rendering without FoW
2009-08-28 15:52:22 +02:00
Armin Burgmeier
de00b5df53
Moved StdMesh headers to correct location, load meshes without skeleton
2009-08-27 22:41:23 -04:00
Armin Burgmeier
0137936211
Merged alphafix into mesh
2009-08-27 21:52:10 -04:00
Armin Burgmeier
4fa029df2c
Merged default into mesh
2009-08-27 21:35:55 -04:00
Armin Burgmeier
d021b9a586
Fixed a glib warning on startup about the main loop being active already
...
The exact warning message was
GLib-WARNING **: g_main_context_prepare(): main loop already active in another
thread
The problem was that there is code in C4Console.cpp which iterates the Glib
main loop to update the Console window while loading the game. This was not
synchronized with CGLibProc - we can't iterate the mainloop when the CGLibProc
already does.
2009-08-23 19:22:55 -04:00
Armin Burgmeier
4573315d42
Reverted meaning of alpha: Now 255 is opaque and 0 is transparent
...
Shader and D3D remains to be adapted yet.
2009-08-23 17:46:56 -04:00
Günther Brammer
f5b904c3db
More StdApp cleanup
2009-08-16 18:30:28 +02:00
Sven Eberhardt
acca4a204d
merge
2009-08-16 17:13:42 +02:00
Armin Burgmeier
e2c68254a5
Added includes and forward declarations to headers
...
So that they can be included individually
2009-09-21 00:01:55 -04:00
Günther Brammer
e762a4501e
OpenGL: invert alpha channel in shader code, too
2009-09-19 19:36:31 +02:00
Günther Brammer
9a8b5dd739
Replace BOOL by bool, TRUE by true, FALSE by false
2009-08-15 20:50:32 +02:00
Armin Burgmeier
9dc91c66c4
Set default icon for GTK windows
...
This way message dialogs are decorated with the OC icon as well
2009-08-15 12:22:52 -04:00
Günther Brammer
a28a6621da
shuffle the #includes around a bit
...
This reduces the dependencies from src/lib to the rest of the code a bit.
2009-08-12 22:03:50 +02:00
Sven Eberhardt
df6010a148
merge
2009-08-12 17:27:43 +02:00
Martin Plicht
9d20fa8fe8
Mac: Exposé fix
2009-08-12 14:30:48 +02:00
Martin Plicht
5c4248b0a8
Mac: Implement CStdApp::MessageDialog and Copy & Paste
...
StdMacApp.mm implements parts of CStdApp using Objective-C
2009-08-12 14:17:36 +02:00
Martin Plicht
527d833b19
Mac: Enable Key Repeat
2009-08-12 14:16:35 +02:00
Martin Plicht
08479b6cfd
Put Mac-specific stuff into MacUtility namespace
2009-08-12 14:13:16 +02:00
Günther Brammer
572d00c32e
Move all source files
...
This might make stuff easier to find.
2009-08-10 17:59:18 +02:00