Commit graph

282 commits

Author SHA1 Message Date
Joni Vähämäki
915e12321c GRIM: Enable alpha test when drawing sprites. 2014-08-18 13:09:42 +03:00
Pawel Kolodziejski
e539b27af8 MATH: improve type support for viewport argument 2014-08-15 12:25:48 +02:00
Christian Krause
cbbf60d155 EMI: Check another bit in the mesh face flags to enable blending.
Bit 0x40000 in the mesh face flags (set only in the intro) should
enable blending, too. This fix lets the various screens of the intro
fade into each other.
2014-08-14 03:01:12 +02:00
Joni Vähämäki
3df07c384e EMI: Fix parsing of sprite flags. Fixes #960 2014-08-12 17:46:47 +03:00
Joni Vähämäki
6b7b6fa6e5 EMI: Do not disable writing to color buffer if an actor's sort order is >= 100.
Fixes invisible Guybrush in the set unc.
2014-08-12 17:46:46 +03:00
Joni Vähämäki
398f2afa98 EMI: Always write sprites to the depth buffer. 2014-08-12 17:46:45 +03:00
Joni Vähämäki
ee24b2c12f EMI: Parse sprite Z offset. 2014-08-12 17:46:44 +03:00
Joni Vähämäki
055f742ccc EMI: Enable alpha blending if the mesh face flags has the 16th bit set.
This fixes drawing of the shadow mesh in the set unc when Guybrush is under the lights.
2014-08-12 17:46:43 +03:00
Joni Vähämäki
9a87fa5d51 EMI: Parse per-texture blending mode from model data. 2014-08-12 17:46:42 +03:00
Joni Vähämäki
6e96d962f8 EMI: Parse tex coords from sprite files. Fixes #978 2014-08-10 18:51:31 +03:00
Joseph Jezak
e057c003c1 EMI: Calculate the bounding box using the actor's bounding box info. 2014-08-04 11:14:28 -04:00
Joseph Jezak
372be90111 EMI: Make the bounding box coordinate orientation match grim's. 2014-08-04 11:14:28 -04:00
Joseph Jezak
e638c09ba6 GRIM/EMI: Adjust the width and height names to better reflect usage. 2014-08-04 11:14:28 -04:00
Joseph Jezak
f0b2c54a56 EMI: Only use the wear chore to find the actor's bounding box. 2014-07-30 20:56:14 -04:00
Joseph Jezak
60fa48490e EMI/GRIM: Rename getBoundingBoxPos to getScreenBoundingBox to better describe the behavior. 2014-07-30 15:23:53 -04:00
Dries Harnie
97d5bd9247 GRIM/EMI: Fix off-by-one in GfxOpenGL::readPixels 2014-07-24 15:49:01 +02:00
Pawel Kolodziejski
a39576d921 GRIM/EMI: attempt to fix over read buffer. cleanup types 2014-07-24 15:37:11 +02:00
Joseph Jezak
0866354007 GRIM/EMI: Rename setupCamera to better describe what it does. 2014-07-22 23:28:00 -04:00
Joseph Jezak
6068e94938 EMI/GRIM: Remove unsused roll parameter from setupCamera calls. 2014-07-22 23:27:56 -04:00
Joel Teichroeb
e97e61c619 Merge pull request #954 from chkr-private/savegame-screenshots
EMI: Implement screenshot thumbnails for savegames
2014-07-22 14:45:04 -07:00
Joni Vähämäki
1081471119 EMI: Implement projection shadows. 2014-07-20 21:46:14 +03:00
Christian Krause
1e82136592 EMI: Implement screenshot thumbnails for savegames 2014-07-16 23:18:43 +02:00
Pawel Kolodziejski
b80dea5a90 JANITORIAL: formating code 2014-07-14 09:33:37 +02:00
Pawel Kolodziejski
6df761e70e GRIM/OPENGL: cleanup type 2014-07-14 09:32:45 +02:00
Pawel Kolodziejski
5ece56965c GRIM/OPENGL: un-hardcode GFX operations a bit 2014-07-14 08:10:08 +02:00
Pawel Kolodziejski
0ba0bf20ca GRIM: drop SYMBIAN32 ifdef 2014-07-14 08:04:37 +02:00
Pawel Kolodziejski
39e9dcb8aa GRIM: remove _screenSize usage 2014-07-14 08:03:10 +02:00
Pawel Kolodziejski
017a67b8bc GRIM/OPENGL: added few comments to glPixelStorei usage 2014-07-14 07:51:37 +02:00
Pawel Kolodziejski
0db12d7062 GRIM/EMI/MYST3: drop usage for GLU functions for replacements 2014-07-10 07:29:01 +02:00
Pawel Kolodziejski
6625530d88 JANITORIAL: fix whitespaces 2014-07-10 07:23:47 +02:00
Pawel Kolodziejski
b7e887911a GRIM: Don't put OpenGL vendor/driver name in window title. Now it wrote in debug console. 2014-07-06 11:18:35 +02:00
Joni Vähämäki
88ec1d5285 EMI: Implement lighting for OpenGL Shaders renderer. 2014-07-05 14:09:56 +03:00
Joel Teichroeb
5f87912e91 Merge pull request #949 from Akz-/grim-quat
GRIM: Use quaternions for animation.
2014-07-04 10:45:32 -07:00
Joseph Jezak
e8d5fc649c GRIM: Remove usage of _currentQuat since it's just an identity. 2014-07-04 12:53:34 -04:00
Pawel Kolodziejski
2bf63a5f52 GRIM/EMI: synced OpenGL and TinyGL a bit more 2014-07-03 21:55:10 +02:00
Pawel Kolodziejski
8a1e63abeb GRIM: formatting 2014-07-03 21:02:01 +02:00
Joni Vähämäki
dbfec3b1e8 GRIM: Use quaternions for animation. 2014-07-02 22:29:37 +03:00
Christian Krause
565f488c58 GRAPHICS: Refactoring
Rename some variables and functions of the graphics drivers to distinguish properly betwen textures and materials.
2014-07-02 02:07:06 +02:00
Joel Teichroeb
0e69cc11a7 Merge pull request #938 from Akz-/emi-sprite-fixes
EMI: Sprite fixes
2014-06-25 17:30:36 -07:00
Joni Vähämäki
fdd4cb2675 EMI: Clean up sprite drawing in OpenGL. 2014-06-23 22:34:49 +03:00
Joni Vähämäki
33b32470d7 EMI: Read depth write and alpha test flags from sprite files. 2014-06-23 22:34:47 +03:00
Joseph Jezak
55f77fb92f EMI/GRIM/MYST3: Replace some Quaternions with Rotation3D. 2014-06-23 09:24:26 -04:00
Joni Vähämäki
3232b9cb4d EMI: Draw model faces with alpha textures also to the depth buffer. Fixes #874 2014-06-22 14:19:56 +03:00
Joni Vähämäki
83ed05c269 EMI: Read vertex color values from sprite files.
This makes the coals in wed more transparent, matching the original game better.
2014-06-22 14:19:56 +03:00
Joni Vähämäki
59e60654f8 EMI: Add support for additively blended sprites. 2014-06-22 14:19:54 +03:00
Christian Krause
58833e15f0 EMI: Change frustum parameters for Overworld actors
- lower the distance to the near plane of the frustum for Overworld
  and change the other parameters accordingly

- this makes the following actors visible:
 - background of directions to Pegnose Pete's house (issue #869)
 - Murray in the murray_go easter egg
 - the trophies during the diving contest (upper left corner)
 - the screenshots for the save games (still with the wrong texture)
2014-06-21 23:59:07 +02:00
Christian Krause
bf8501fd37 EMI: Clear depth buffer before starting to draw the Overworld
- all actors of the Overworld should cover any non-Overworld drawings
- Overworld actors need to use the depth buffer so that e.g. the
pause screen is drawn above the inventory

- this fixes issue #927 (inventory is drawn above background of pause
  or menu screen)
2014-06-21 23:59:07 +02:00
Joel Teichroeb
a539832c78 Merge pull request #910 from JoseJX/FixGLTextureParams
EMI: Clamp sprites, repeat other textures.
2014-06-20 08:30:44 -07:00
Joseph Jezak
df3d63fc24 EMI: Add support for clamping sprite textures and repeating other textures. 2014-06-18 22:19:42 -04:00
Joni Vähämäki
b5cdd1240f EMI: Only draw models for actors inside the view frustum.
This adds math classes for doing frustum culling in software. These could be used for optimizing performance in many other places as well. For example, if an actor is outside the view frustum, it may not be necessary to do expensive keyframe animation and vertex skinning calculations for that actor.
2014-06-16 15:42:18 +03:00