fgenesis
f641764765
Merge branch 'experimental' into tile-optimization
2023-12-21 14:20:22 +01:00
fgenesis
cf2dc71a34
add AC_SET_FH bone command; rework bone frames; some skel cleanups
...
- bone frames are no longer separate quads. this is probably a leftover
from when crossfading was planned, but this was never implemented.
now it's a simple texture swap.
- remove anim resetPassOnEnd attrib
- instead, add resetOnEnd that applies to everything that was changed via bone command
- resetOnEnd=true is the new default
2023-12-21 06:04:09 +01:00
fgenesis
6d70204847
fixes for osx
2023-11-19 19:59:06 +01:00
fgenesis
4dc374c367
forgot to make a method const
2023-11-17 01:39:46 +01:00
fgenesis
ec5f50e41e
fix jittering when moving the camera around in map editor mode.
...
This is related to a494a3f411
and should hopefully
fix the last issues with this for good.
Seems fine with SDL versions from 2022 and 2023 on windows;
untested on linux.
(The second window->handleInput() that got removed broke the sing circle
if it was there. It was previously added as a mitigation and is no longer
needed.)
2023-10-28 06:08:19 +02:00
fgenesis
c91f5ea4c1
don't show standard, non-animated grid points in debug vis
2023-10-26 22:18:54 +02:00
fgenesis
9f169c8419
fix Hair, now using VBO and working
2023-10-26 22:18:19 +02:00
fgenesis
d68e4002ad
Hair uses VBOs now but it's fucked. will fix when sober.
2023-10-26 03:22:27 +02:00
fgenesis
d33e8f9116
Merge branch 'experimental' into tile-optimization
...
# Conflicts:
# Aquaria/ScriptInterface.cpp
# BBGE/AfterEffect.cpp
# BBGE/RenderGrid.cpp
# BBGE/SkeletalSprite.cpp
2023-10-26 01:41:51 +02:00
fgenesis
03eeb7f4e9
only update VBO if texcoords actually change
2023-10-25 01:52:03 +02:00
fgenesis
011b9f2a82
more editor fixes:
...
- correctly sort ElementTemplate by idx, not by pointer. oops.
- selecting tiles works again (new: including wraparound)
- don't display layer tile borders when switching to other edit modes
- make sure that tile selection wraparound doesn't pick up font letter tiles
2023-10-25 00:46:12 +02:00
fgenesis
0a2965e26b
editor: fix multi-select, scaling, sideways-scaling, texcoords
2023-10-21 00:33:49 +02:00
fgenesis
eaa1746f4e
tentative fix for particle flip not working properly in some cases
2023-10-20 03:53:29 +02:00
fgenesis
a1b2762b59
fixes to prev. commits.
...
+ Lua func *_getRepeatScale()
2023-10-20 03:31:28 +02:00
fgenesis
4852eb533b
update texcoords of quads which have AUTO_VIRTUAL* set properly
...
move auto size vars & handling to PauseQuad, since not every quad needs this.
2023-10-20 03:21:05 +02:00
fgenesis
4c941419b4
ensure that texcoords are always updated when changing things that affect them
2023-10-20 02:42:52 +02:00
fgenesis
f1796475f1
undo parts of prev commits; move old fudge from font atlas code to tile rendering.
...
this should now be correct and much simpler to maintain from now on.
downside is that it breaks the appearance of quads with tex repeat on,
but i don't think anyone ever used this ever since i've added the Lua functions;
so i'm just calling it broken in older versions and move on.
2023-10-20 02:06:45 +02:00
fgenesis
b33080b0ea
remove immediate mode from quad rendering. breaks a couple rendering details too. WIP.
2023-10-20 00:37:00 +02:00
fgenesis
a4ea66761b
fixes to SceneEditor, some more things are working again
2023-10-20 00:35:25 +02:00
fgenesis
4013a9c09b
working on quad repeat, this probably breaks it but will continue later
2023-09-13 23:39:22 +02:00
fgenesis
db8912cb16
Merge branch 'tile-optimization' of github.com:AquariaOSE/Aquaria into tile-optimization
2023-09-10 20:34:09 +02:00
fgenesis
8d49e62428
SceneEditor: hovering tiles works again
2023-09-08 19:23:03 +02:00
fgenesis
f1656d2fbc
small clarification in framebuffer, no functional change
2023-08-26 02:09:44 +02:00
fgenesis
048a787cb1
get rid of beforeScaleOffset
2023-08-26 00:58:47 +02:00
fgenesis
c959b9f6d6
don't need to set line width again and again
2023-08-26 00:31:46 +02:00
fgenesis
a111bfc17f
use VBO to render tile borders
...
Also fix oversight in DynamicGPUBuffer::drawElements(); first wasn't used
2023-08-26 00:14:05 +02:00
fgenesis
cc78b300cc
Cleanups and fixes to AfterEffect
...
- fully uses RenderGrid now, no more immediate mode
- remove RippleEffect because it was unused
- Don't render the grid if no effects are active. Sames some GPU time.
- Fix ShockEffect math, broken 2 commits ago
2023-08-25 21:49:16 +02:00
fgenesis
c1084a022d
forgot a virtual dtor
2023-08-25 20:14:30 +02:00
fgenesis
2f7dd87d8b
fix IBO generation...oops
2023-08-25 14:07:25 +02:00
fgenesis
71f9120c30
rework AfterEffect to use RenderGrid instead of its own thing
2023-08-25 14:07:11 +02:00
fgenesis
3c48349e94
remove tiny unused things
2023-08-25 01:57:28 +02:00
fgenesis
7e040ea354
tile repeat with grid effects works again
2023-08-25 00:40:14 +02:00
fgenesis
f9a91e87e4
Move CombinedRenderAndGPUState up one level
2023-08-25 00:39:35 +02:00
fgenesis
d31d320719
set GL textures to always repeat to avoid unnecessary calls to glTexParameteri()
...
Shouldn't have any visual changes because edge clamp is never actually used
2023-08-25 00:38:36 +02:00
fgenesis
17452f175e
tiny fixes to VBO
2023-08-25 00:35:27 +02:00
fgenesis
6a7aa66bab
splinegrid: allow changing point size to better acommodate very large or very small textures
2023-08-22 21:28:05 +02:00
fgenesis
368271c40e
More work on tile rendering:
...
- Use indexed triangle rendering, no more GL_QUADS for tiles
- Fix aquarian text on maps
- Tile tex repeat mode works again
Known broken:
- Editor
- Tile repeat with grid effects
2023-08-09 02:41:04 +02:00
fgenesis
395ff079e9
Experimenting with GL debug context and GL_ARB_debug_output
2023-08-09 02:34:12 +02:00
fgenesis
ff035a37fa
fix some asserts
2023-08-01 22:39:48 +02:00
fgenesis
e27a031229
Get rid of GL functions with double precision that were accidentally used
...
# Conflicts:
# BBGE/OpenGLStubs.h
2023-08-01 22:39:34 +02:00
fgenesis
defaa60850
don't quadruple overdraw points in grid debug render
2023-08-01 20:46:55 +02:00
fgenesis
2993145f2a
"3" is not a valid internalformat for glTexImage2D()
2023-08-01 20:46:35 +02:00
fgenesis
704981dd00
initial support for static vertex buffers. TileRender uses that now.
2023-07-20 23:11:18 +02:00
fgenesis
e9e81e5ef9
"3" is not a valid internalformat for glTexImage2D()
2023-07-20 22:28:20 +02:00
fgenesis
bc3dfdb9a3
don't quadruple overdraw points in grid debug render
2023-07-20 22:27:50 +02:00
fgenesis
16235a4ad1
Get rid of GL functions with double precision that were accidentally used
2023-07-18 18:59:09 +02:00
fgenesis
7768bf3059
unnecessary file
2023-07-18 18:58:18 +02:00
fgenesis
3ac706f1b6
Fix support for vertically flipped tiles
...
Turns out there was another renderer bug that would effectively
ignore the vertical flip if a Quad had an active ElementEffect that
used a grid (effects on numpad keys 1,2,3,5,6).
2023-07-18 18:57:54 +02:00
fgenesis
1da28ec40a
fix tile repeat, works now
2023-07-14 05:21:16 +02:00
fgenesis
9b1c3bba18
rendering optimizations; work towards making the transition to VBOs eventually
2023-07-14 04:25:59 +02:00