Matthew Duggan
18e7da15e3
ULTIMA8: Add ability to return blocker from isValidPosition
2020-07-27 13:47:00 +09:00
Matthew Duggan
95d0fc6364
ULTIMA8: Keep track of the crosshair process instance
2020-07-27 13:47:00 +09:00
Nathanael Gentry
4f49df9ff2
DIRECTOR: LINGO: Implement palette of cast
...
Bitmap cast members also now have palette read in correctly, since the CLUT
field can refer to a castmember and not just one of the builtin fields.
2020-07-26 23:46:06 -04:00
Nathanael Gentry
d6ac60a221
DIRECTOR: LINGO: Implement kTheFrameTempo
2020-07-26 23:46:06 -04:00
Nathanael Gentry
3cb5b5acb4
DIRECTOR: LINGO: Implement kTheFramePalette
2020-07-26 23:46:06 -04:00
Nathanael Gentry
013c7276e7
DIRECTOR: Implement basic puppetPalette
...
Right now, only changing the palette itself is supported. Fades and other fancy
features will come later, as needed.
2020-07-26 23:46:06 -04:00
Nathanael Gentry
1e38497d8a
DIRECTOR: Properly read frame palette id
2020-07-26 23:46:06 -04:00
Nathanael Gentry
b3b7ed19a4
DIRECTOR: Rework palette handling
...
Now there is no static for default palettes. All the defaults have negative ids
anyway, so those are just protected by the new setter method.
2020-07-26 23:46:06 -04:00
Paul Gilbert
83dbdf0c1f
GLK: Mark engine as build by default
2020-07-26 19:29:41 -07:00
Paul Gilbert
c414c43c20
ULTIMA: Mark engine as build by default
2020-07-26 19:29:41 -07:00
Paul Gilbert
315af395f1
GLK: Fix local unicode variables to be bool
2020-07-26 19:29:41 -07:00
Nathanael Gentry
402a8fb117
DIRECTOR: Set default palette for pre-D4 versions
2020-07-26 20:28:20 -04:00
antoniou
9828996bd3
CONFIGURE: Require ogg detected and enabled for theora
2020-07-27 02:11:43 +03:00
Cameron Cawley
2e6de7ee3f
BACKENDS: Replace use of bzero()
2020-07-26 23:55:28 +01:00
Roland van Laar
9219568792
DIRECTOR: LINGO: Revert use lctxIndex in lscr dumps
...
This reverts commit 274be05986 .
The castIds are repaired during the loading of the scripts
and thus can be dumped based on their castId again.
2020-07-27 00:48:51 +02:00
Roland van Laar
30e6f0a01d
DIRECTOR: LINGO: Add scripts to the correct cast
...
Repair the castIds of script when the scripts are loaded.
The castIds that are defined in the scripts can be wrong.
A better way to link scripts with casts is via the scriptId.
To achieve this casts need to be fetched by their scriptId.
This commit implements the necessary getCastMemberByScript functions
to enable fetching a cast by it's scriptId.
Also removes the old way of repairing the castId coupling.
2020-07-27 00:48:51 +02:00
Eugene Sandulenko
820520f9d6
JANOTORIAL: Fix indentation
2020-07-27 00:46:00 +02:00
Eugene Sandulenko
300bea13c8
DIRECTOR: Remove unused variable
2020-07-27 00:39:40 +02:00
Eugene Sandulenko
490e614b30
DIRECTOR: Fix warning
2020-07-27 00:39:07 +02:00
Roland van Laar
9e040d1b3c
DIRECTOR: LINGO: STUB XObject FixPalette
...
FixPalette is an XObject for Mac that patches the palette.
According to the docs it's either needed after an 8 palette switch
or when using QuickTime movies with more than one custome palette.
Afterwards the colors will be wrong.
The mPatchIt function that correctly sets the palette is stubbed.
Note: It's at the moment of writing this commit unknown if the
bug will show itself on the mac versions of games.
2020-07-27 00:36:07 +02:00
Roland van Laar
af62a9d182
DIRECTOR: LINGO: Add FlushXObject
...
FlushXObj is a Mac only XObject to call the underlying FlushEvents function
from the Macintosh Toolbox. Its purpose is to flush, i.e. remove, events
that happened while loading code.
Implemented as a no-op, there's no need to flush events because:
- ScummVM handles them and
- computers were slower and queued events when the program was loading.
More information about the Toolbox and the flush events can be found here:
https://en.wikipedia.org/wiki/Macintosh_Toolbox
https://developer.apple.com/legacy/library/documentation/mac/pdf/MacintoshToolboxEssentials.pdf
2020-07-27 00:36:07 +02:00
Einar Johan Trøan Sømåen
38bb27fb98
Merge pull request #1657 from GunnarBirke/lights-and-shadows
...
GSOC WME3D: Lights and shadows
2020-07-27 00:20:20 +02:00
Filippos Karapetis
468ca9e00e
STARTREK: Hook bridge function stubs
2020-07-27 00:54:49 +03:00
Filippos Karapetis
e219042fb8
STARTREK: More work on the intro and credits. Remove custom math functions.
2020-07-27 00:54:49 +03:00
Filippos Karapetis
bf80aa1ed0
STARTREK: Some work and stubs for the game intro
2020-07-27 00:54:49 +03:00
Filippos Karapetis
b9d33f4f93
STARTREK: Fix MIDI driver initialization
2020-07-27 00:54:49 +03:00
Nathanael Gentry
740cf9f9bf
DIRECTOR: Reorganize frame palette loading
2020-07-26 17:45:40 -04:00
Nathanael Gentry
e1361a4ff9
DIRECTOR: Prettify puppetTransition arg test
...
The if is replaced with a nice switch.
2020-07-26 17:45:40 -04:00
Nathanael Gentry
c98cea16b4
DIRECTOR: Keep track of loaded palettes
2020-07-26 17:45:40 -04:00
Roland van Laar
372a7f984f
DIRECTOR: LINGO: Only replace string that is a var
...
cb_objectcall accepts strings that should be variables.
When a string isn't known as a variable it should be popped
back to the stack as a string.
The check was for VOIDSYM, however a non-existing var results in
a VOID.
2020-07-26 23:35:01 +02:00
Gunnar Birke
7d227310e3
WINTERMUTE: Add some comments to MeshX::update
2020-07-26 22:57:09 +02:00
Gunnar Birke
cf345f91a6
WINTERMUTE: Add missing script calls for lights and shadows
2020-07-26 22:57:09 +02:00
Gunnar Birke
bd022f4db6
WINTERMUTE: Add script calls for setting shadow image
2020-07-26 22:57:09 +02:00
Gunnar Birke
f7d354c288
WINTERMUTE: Warn about actor being displayed with non-stencil shadows
2020-07-26 22:57:09 +02:00
Gunnar Birke
73c0e9464e
WINTERMUTE: Fix calculation of transform for attachment shadow
2020-07-26 22:57:09 +02:00
Gunnar Birke
8d4b3de4a7
WINTERMUTE: Try to approximate wme settings for spotlight cutoff
2020-07-26 22:57:09 +02:00
Gunnar Birke
d056758e72
WINTERMUTE: Initialize alpha value of specular and emissive color
2020-07-26 22:57:09 +02:00
Gunnar Birke
beb33b2b6b
WINTERMUTE: Implement shadow volume render functions
2020-07-26 22:57:09 +02:00
Gunnar Birke
70e30f11b1
WINTERMUTE: Invert z coord when loading in shadow light position
2020-07-26 22:57:09 +02:00
Gunnar Birke
6895116b63
WINTERMUTE: Use argb value for shadow color (like wme)
2020-07-26 22:57:09 +02:00
Gunnar Birke
a1371d002f
WINTERMUTE: Handle camera pointer being null
2020-07-26 22:57:08 +02:00
Gunnar Birke
06ea22dfaa
WINTERMUTE: Render light position and direction if requested
2020-07-26 22:57:08 +02:00
Gunnar Birke
0df93728f7
WINTERMUTE: Let mesh update shadow volume vertices of model
2020-07-26 22:57:08 +02:00
Gunnar Birke
3105c4d9f7
WINTERMUTE: Generate adjacency list of mesh during load
2020-07-26 22:57:08 +02:00
Gunnar Birke
136831029c
WINTERMUTE: Display shadow volume of actor if stencil shadows are set
2020-07-26 22:57:08 +02:00
Gunnar Birke
bcc565c0f1
WINTERMUTE: Update normal vectors during animation update
2020-07-26 22:57:08 +02:00
Gunnar Birke
b938293170
WINTERMUTE: Normalize normal vectors of 3d objects
2020-07-26 22:57:08 +02:00
Gunnar Birke
aaaa397802
WINTERMUTE: Implement Light3D::setLight
2020-07-26 22:57:01 +02:00
Roland van Laar
32a4ec8d4d
DIRECTOR: LINGO: Set correct debuglevel
...
The called function only prints on debuglevel 5. Set the debuglevel
to that.
2020-07-26 19:38:05 +02:00
Cameron Cawley
68107af6de
TESTS: Fix the subsystem of the test runner on Windows
2020-07-26 17:07:35 +01:00