Paul Chote
24f64ae1a8
Fix an edge case where the wrong sheet may be mapped to a depth sprite.
2021-07-25 19:20:19 +02:00
Paul Chote
70892a6661
Change DrawSprite calls to provide scales instead of sizes.
...
This allows us to remove a hacky workaround for calculating
depth offsets when sprites have size.Z == 0.
2021-07-25 00:32:17 +02:00
Andre Mohren
6810469634
Updated copyright years.
2021-06-29 18:33:21 -05:00
Andre Mohren
62207313a0
32bpp assets dont need a palette to be defined.
2021-06-25 10:33:54 +02:00
Paul Chote
dacacdf130
Remove global fallback to software cursors on error.
...
We now only fall back for the specific cursors that failed.
2021-05-30 12:01:44 +02:00
Paul Chote
c64cfea179
Allow mods to downscale framebuffer resolution for large world viewports.
2021-05-16 14:22:52 +02:00
Paul Chote
84dff779ac
Work around rendering glitches with non-unity pixel scales.
2021-05-16 14:22:52 +02:00
Paul Chote
0d4b81fe6f
Set world framebuffer size based on minimum zoom.
...
This avoids reallocating buffers each time the player changes zoom level.
2021-05-16 14:22:52 +02:00
Paul Chote
0735345674
Set world framebuffer size based on minimum zoom.
...
This avoids reallocating buffers each time the player changes zoom level.
2021-05-16 14:10:32 +02:00
Paul Chote
bb15bd20c0
Add support for 16 bit floating point textures.
2021-05-16 14:10:32 +02:00
Paul Chote
95f5d162ef
Increase SheetCount back to 8.
...
This was previously decreased to support legacy GPUs
that only supported 8 texture image units and we need
to reserve one of these for the palette texture.
OpenGL 3.X mandates a minimum of 16 (and most most GL2
cards also supported it) so we can now safely increase
this limit.
2021-05-16 14:10:32 +02:00
Paul Chote
560f1a6466
Restrict player color choices to the hue-saturation plane.
2021-05-15 15:29:46 +02:00
Paul Chote
4042d5b179
Preserve original brightness when remapping player colors.
2021-05-15 15:29:46 +02:00
teinarss
10676be377
Replace F extension with string interpolation
2021-05-08 22:20:59 +02:00
abcdefg30
3276373745
Pause rendering when the window is minimized
2021-04-26 21:56:20 +01:00
Matthias Mailänder
5a0bcc01a6
Add a lint check for trait placement on hardcoded actor names.
2021-04-11 20:20:00 +02:00
teinarss
6ba9e64380
Rename modifiablePalettes to mutablePalettes in HardwarePalette
2021-04-03 11:33:31 +02:00
teinarss
8b0a3ea680
Remove our own impl of ReadOnlyList and update usages
2021-04-03 11:33:31 +02:00
teinarss
e12ff2c59d
Remove our own ReadOnlyDictionary and update usages
2021-04-03 11:33:31 +02:00
teinarss
3d381e6e32
Make SpriteFont.Measure take zero allocations
2021-04-03 11:22:45 +02:00
Andre Mohren
3f510b6d93
Make ISpriteLoader aware of the source file name.
2021-03-27 17:36:59 +01:00
teinarss
d60c05eff3
Change to use pattern matching
2021-03-27 17:29:20 +01:00
Castle
12b6bb9448
Allow BlendMode of RgbaColorRenderer to be changed
2021-03-23 17:07:20 +01:00
Paul Chote
0c52d275fa
Add TransparentIndex to PaletteFromFile.
2021-03-20 17:15:56 +01:00
teinarss
6b74093c04
Add readonly to structs
2021-03-14 15:17:57 +01:00
Paul Chote
7694d0842b
Fix two outdated comments.
2021-03-12 21:52:16 +01:00
Paul Chote
96c3825b6a
Add alpha support to TerrainSpriteLayer.
2021-03-12 21:52:16 +01:00
Paul Chote
d52ba83f96
Replace terniary null checks with coalescing.
2021-03-08 18:11:25 +01:00
teinarss
4a1e4f3e16
Use expression body syntax
2021-03-07 13:00:52 +00:00
teinarss
ed295ae315
Change throw exceptions to use nameof in parameter
2021-02-28 18:43:51 +01:00
Paul Chote
0975102e92
Add Alpha support to sequences.
...
Alpha can specify a single value for the sequence
or values for each frame in the sequence.
AlphaFade: True can be specified to linearly fade
to transparent over the length of the animation.
2021-02-24 19:20:48 +01:00
teinarss
58313520f0
Change renderables to class to avoid boxing
2021-01-29 00:24:27 +01:00
Paul Chote
82a9809192
Remove RenderSprites.Scale.
2021-01-21 18:22:11 +01:00
Paul Chote
f6b40b2bce
Allow sequences to define a Scale factor.
2021-01-21 18:22:11 +01:00
Paul Chote
142870d78a
Support multiple sheets in TerrainSpriteLayer.
2021-01-16 22:09:08 +01:00
Paul Chote
b0aa32cd1b
Support multiple palettes in TerrainSpriteLayer.
2021-01-16 22:09:08 +01:00
Paul Chote
53db1230ab
Move default tileset parsing to Mods.Common.
2021-01-11 21:57:55 +01:00
Paul Chote
0a374e2264
Move ownership of tile sprites to the terrain renderer.
2021-01-11 21:57:55 +01:00
Matthias Mailänder
7bc17b59f5
Add a generic video player widget.
2021-01-10 10:21:17 +01:00
Paul Chote
8edd9de278
Replace ITintableRenderable with IModifyableRenderable.
2021-01-06 00:06:51 +01:00
Paul Chote
67754e8693
Add alpha support to SpriteRenderer.
2021-01-06 00:06:51 +01:00
Paul Chote
b88495c689
Remove palettes from base IRenderable.
2021-01-06 00:06:51 +01:00
Paul Chote
aee3eb99c3
Fix --dump-sequence-sheets crash.
2021-01-02 11:43:55 +01:00
Paul Chote
62fa3b7c9c
Rename SpriteFrameType enums.
2020-12-25 18:51:25 +01:00
Paul Chote
ce09b402d0
Fix definition and use of non-indexed sprite color channels.
...
Our SpriteFrameType names refer to the byte channel order rather than
the bit order, meaning that SpriteFrameType.BGRA corresponds to the
standard Color.ToArgb() etc byte order when the (little-endian) integer
is read as 4 individual bytes.
The previous code did not account for the fact that non-indexed Png
uses big-endian storage for its RGBA colours, and that SheetBuilder
had the color channels incorrectly swapped to match and cancel this out.
New SpriteFrameType enums are introduced to distinguish between BGRA
(little-endian) and RGBA (big-endian) formats, and also for 24bit data
without alpha. The channel swizzling / alpha creation is now handled
when copying into the texture atlas, removing the need for non-png
ISpriteLoader implementations to allocate an additional temporary array
and reorder the channels during load.
2020-12-25 18:51:25 +01:00
Matthias Mailänder
fb20479379
Add .vxl support to the asset browser.
2020-12-25 00:00:11 +00:00
Paul Chote
e0b3e631fe
Remove obsolete null checks.
2020-12-19 13:07:01 +01:00
abcdefg30
31c9b4fc80
Revert renderable buffer sorting improvements
2020-12-05 17:03:03 +00:00
teinarss
2c9a36b9a3
Update float3 to readonly and use in modifier for parameters.
2020-12-02 20:37:50 +01:00
teinarss
e6db2c98d0
Make WRot readonly and use in parameter modifier
2020-12-01 22:54:39 +00:00