Commit Graph

6976 Commits (lights3)
 

Author SHA1 Message Date
Peter Wortmann 368a073415 Remove "ColorAnimation"
Not used any more
2015-09-20 14:50:36 +01:00
Peter Wortmann 480ade634d Shiny materials, shader reorganisation
This implements the proposal made in the forum for "shiny" materials -
material can now determine the angle at which the most light is reflected.
Shiny materials might set this lower to approximate a "reflection" effect,
and increase the "spottiness" at the same time. To compensate for the
lack of brightness without light, "emittance" can be used.

Not sure this is the most elegant way to model this - the "proper" way
here would be to have emittance, shading and specular as three separate
light parameters instead of molding one into the other and using the third
to compensate.

Furthermore, this reorganises shaders in a major way: We reduce the
number of shader files down to three, pushing a number of possible
configurations into preprocessor. I believe this should be easier to
understand, which for the moment trumps theoretical extensibility
benefits.
2015-09-20 14:50:22 +01:00
Peter Wortmann 88ef1d40fa Warning fixes
Actually pretty sure a few of them were bugs
2015-08-31 19:52:39 +01:00
Peter Wortmann a45c865be1 Fixed preprocessor for AUDIO_TK != AUDIO_TK_OPENAL 2015-08-31 17:35:08 +01:00
Peter Wortmann 30857e835e Shader gamma implementation
In comparison to the old system, this is a downgrade - instead of being
able to set a full color mapping by gamma ramp, we now get just a value
per colour channel.

Upside is that we do not need to play around with the global gamma ramps
any more, which was arguably the wrong way to do it.

This commit will likely break everything that has been using gamma so far.
2015-08-31 17:35:08 +01:00
Peter Wortmann 6a016f807d Alternate light drawing, v2
This is now a "mix" between the original and the alternate drawing
strategy, hopefully combining its strength. In detail:

1. Intensity of light sources aren't added together anymore. Instead,
   the brightest light source decides end brightness pre-smoothing.

2. For smoothing, we update normals more quickly than brightness. This is
   the main change relative to the first "alternate" version. Actually
   quite embarassing that I didn't think of this solution before %)

This is still a tad busier than what we have currently, simply due to
normals changing around more quickly. On the plus side, Clonk faces
shouldn't go dark anymore while walking, so that's something.
2015-08-31 17:35:08 +01:00
Sven Eberhardt c588fe79c9 Unpack Music.ocg in Windows installer.
Currently, all music pieces are kept in memory to avoid random group access, which is a bit excessive for the larger music pack. This change will allow runtime music loads without too much delay.
2015-08-30 15:12:34 -04:00
Sven Eberhardt 49a3dd56cd Add optional music pack download to windows installer.
The download is expected to be at: http://download.openclonk.org/OpenClonkOST.ocg

And overwrites the previous Music.ocg.
2015-08-30 14:32:44 -04:00
Julius Michaelis 2a9b481087 Add a new variant of vehicle that can be passed from below but be walked on from above. 2015-08-30 22:19:36 +09:00
Sven Eberhardt 05a78138a3 Add sound and music ambience object.
Also tagged the existing music as "day". Only enabled in the first three missions for now.
2015-08-29 14:11:00 -04:00
Sven Eberhardt 3886f76bf3 Do not hang when a C4Value with prop list pointer is not cleared at game end.
Just cause an assertion in debug mode instead.
2015-08-29 13:22:55 -04:00
Sven Eberhardt 7813d87338 Fix prop list leak on game end when a sound with a modifier is currently playing. 2015-08-29 13:20:51 -04:00
Sven Eberhardt 535fc79c0f Silence a few compiler warnings. 2015-08-29 08:33:00 -04:00
Sven Eberhardt ca3ae81658 Play OpenAL sounds in front instead of rear for 5.1 surround setups [Win]. 2015-08-29 07:26:36 -04:00
Sven Eberhardt bc2259d197 MSVC/Apple CMake: Search for alext.h separately and make OpenAL extensions optional if only al.h is found. 2015-08-28 20:11:59 -04:00
Clonkonaut 6ad8471101 Nicer hit effect for zaphive. 2015-08-28 16:30:44 +02:00
Clonkonaut 247c2d3fb4 Added to organic hit sounds by ala. 2015-08-28 16:20:16 +02:00
Clonkonaut 86a68f8d9f Loom: renamed animation "my_animation" to "Working" 2015-08-28 16:17:56 +02:00
WinExploder 333bb1e771 Loom: Added Model with animations 2015-08-28 13:47:48 +02:00
David Dormagen a9cc9df8a0 chippies: minor fixes
- exchanged missing function for FindLocation
- creature owner only if NO_OWNER before
- added area-parameter to Chippie_Egg::Place)
- creature control: don't break when object is removed after creation
2015-08-28 13:27:08 +02:00
Sven Eberhardt 44a396497c Fix tree growth in skylands scenario (#750) and rework alt tree texture.
Tree growth now implemented using an overload of the grwoth function. Also made the alternate tree skin in skylands a bit more colorful
2015-08-27 23:29:06 -04:00
Sven Eberhardt 41fd8c38b0 Ignore mission access in editor mode. 2015-08-27 22:19:09 -04:00
Sven Eberhardt da4a45c8a4 Fix mape build. 2015-08-27 21:57:08 -04:00
Sven Eberhardt b73689fc33 Make C4SoundModifier destructor virtual.
It shouldn't matter because the derived classes have no on fields or custom destruction, but silences a warning.
2015-08-27 21:51:10 -04:00
Sven Eberhardt 6ab6a1ac3c Add script interface for some EFX sound modifiers. 2015-08-27 21:44:23 -04:00
David Dormagen d4154ab1eb animals: added chippie 2015-08-27 22:27:36 +02:00
David Dormagen ce3d7e4227 added functionality for an AI player as the owner of animals
Animals should use SetCreatureControlled() and Find_OCF(OCF_Alvie) and Find_Hostile in their prey checks. Then, a scenario author could easily decide to make certain animals not attack the player. Or even animals attack each other. That's cool.
2015-08-27 22:26:37 +02:00
Armin 36c0d84c03 Add stalactite fragments
Conflicts:
	planet/Objects.ocd/Environment.ocd/Stalactite.ocd/Script.c
2015-08-27 21:42:59 +02:00
David Dormagen 06df6885ce stalactite: added sound for dropping water and sound/particles for hit 2015-08-27 21:12:27 +02:00
David Dormagen 250a20ccfc stalactite: updated stalactite model and improved placement & renamed "Stalactite1" to "Stalactite" 2015-08-27 19:25:22 +02:00
Armin 07cc668f46 stalactites: dynamic texture color & fix water sources being out of solid material 2015-08-27 19:24:40 +02:00
WinExploder b044315526 Added stalactite Object 2015-08-27 19:22:38 +02:00
Clonkonaut 2d223188cd Fix sawblade rotation. 2015-08-24 00:10:30 +02:00
Clonkonaut 6bcdfa3525 Added Zaps + hive.
Necessary changes to swarm library: SwarmCall
2015-08-24 00:10:30 +02:00
Clonkonaut bd5e127b22 Added GetTreetopPosition for placement in treetops.
TODO rework coconut to utilize this.
2015-08-24 00:10:29 +02:00
Clonkonaut c7df46762d Swarm library includes insect library. It's needed anyway. 2015-08-24 00:10:29 +02:00
Maikel de Vries ddd49f9b31 add lantern and smoke bomb as weapons to dark mine 2015-08-22 19:34:12 +02:00
Maikel de Vries d363fda9c1 add smoke bomb
Graphics by Win, sound by ala & from freesound.
2015-08-22 19:27:22 +02:00
Clonkonaut b2cc853887 New hit sound for the lantern. Also, general glass break sound. 2015-08-22 10:45:44 +02:00
Sven Eberhardt d7a0d291e2 Fix 64 bit build. 2015-08-21 15:03:13 -04:00
Sven Eberhardt cf940d639b Fix memory leak caused by circular prop list chains.
The shapes library has such pointer chains. The leaks were getting pretty heavy because they included pointers to C4AulFuncs, which kept a lot of parts of the script engine and string tables in memory.
2015-08-20 20:19:38 -04:00
Sven Eberhardt 5ec9999d4c Fix crash on global or scenario script reload.
The string table of System.ocg scripts (except the global System.ocg) pointed to nowhere after the initial load phase, but is still required for reload. Added a ref counting option to keep these string tables alive.
2015-08-20 13:15:11 -04:00
David Dormagen 0d102d2184 explosion: fix nil-pointer when object removes itself on death
After doing damage to an object, you cannot be sure that the object persists. It might have been blown to smithereens. So, catch that case.
2015-08-20 13:47:27 +02:00
Maikel de Vries a63e8f4955 improve the AI testing scenario 2015-08-19 08:11:43 +02:00
Maikel de Vries 49effe4622 let AI handle the musket and fix tracking riding clonks 2015-08-19 08:11:43 +02:00
Armin Burgmeier 0cdafc278b Transform all mesh data to Clonk reference frame on load
Instead of doing the transformation when drawing a mesh. This allows making
the OpenGL normal matrix more consistent, since it does not include the
Ogre-To-Clonk transformation, and so that the transformation does not need
to be inverted in the shader.

As a side effect, all Attach transformations were updated, since before
they were specified in the OGRE reference frame, not the Clonk reference
frame.
2015-08-18 20:30:20 -04:00
Armin Burgmeier 035cbb01b2 mape: draw mattex indices above 127 2015-08-18 19:37:38 -04:00
Armin Burgmeier 5d047d4e44 mape: Move second texture map read pass before crossmapping materials
Otherwise the default textures are not set correctly.
2015-08-18 19:36:58 -04:00
Armin Burgmeier 1827ed53ca Enhance mapscript functions for use with background materials
Add GetBackPixel, GetDefaultBackgroundIndex, GetMaterialTextureIndex, and make
SetPixel accept a background color.
2015-08-18 19:20:36 -04:00
Maikel de Vries 2aa753c6a5 acid gold mine: map script and scenario parameters
The landscape and difficulty settings still require some fine tuning.
2015-08-18 18:41:26 +02:00