Using that higher precision, interpolate at a higher granularity.
Further, truncate the target interpolation time to vertical blank boundaries to avoid producing temporal artifacts.
Fix issues caused by interpolation calculations being handled differently in multiple places (and fix cases where smoothratios were being thrown away only to be redone without checking all proper conditions).
Ensure ClockTicks changes do not break other targets (EKenBuild, VoidSW), but note any interpolation there is not similarly updated.
git-svn-id: https://svn.eduke32.com/eduke32@8050 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/build/src/build.cpp
# source/build/src/sdlayer.cpp
This was necessary because everything is already allocated with the Xmalloc() functions, but a future commit will make blocks allocated with those functions no longer compatible with the system implementation of free(), which Bfree() wraps.
git-svn-id: https://svn.eduke32.com/eduke32@7705 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/build/src/build.cpp
# source/build/src/mdsprite.cpp
# source/build/src/polymer.cpp
# source/build/src/polymost.cpp
# source/build/src/texcache.cpp
# source/build/src/voxmodel.cpp
https://kristerw.blogspot.com/2016/02/how-undefined-signed-overflow-enables.html
Doing this as cleanly as possible involved demoting several function parameters concerning object sizes and counts from size_t to int--I'm fine with this change as the functions in question are not actually capable of handling input with sizes larger than what can be stored in a signed 32-bit integer, making the use of size_t here misleading at best.
git-svn-id: https://svn.eduke32.com/eduke32@7673 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/build/src/polymost.cpp
# source/build/src/texcache.cpp
# source/build/src/tilepacker.cpp
Currently it passes calls through to the system libraries as before.
Also adds an incomplete implementation on PhysFS.
git-svn-id: https://svn.eduke32.com/eduke32@7359 1a8010ca-5511-0410-912e-c29ae57300e0
Changes the filtering for cutscenes. By default, ANMs are unfiltered and IVFs filtered regardless of the filtering option in the menu. Use “texturefilter” to use the same filtering as textures, “forcenofilter” to never use filtering and “forcefilter” to always use filtering.
cutscene <path> { texturefilter }
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6552 1a8010ca-5511-0410-912e-c29ae57300e0
Overrides the aspect ratio for IVF files.
cutscene <path> { aspect <numerator> <denominator> }
Note: For ANMs, you can use rotatesprite and setaspect to draw TILE_ANIM (currently defined as 30716) in EVENT_CUTSCENE with a custom aspect.
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6551 1a8010ca-5511-0410-912e-c29ae57300e0
Used with startcutscene. RETURN is set to 1 when any key is pressed, and is used to control when a cutscene ends.
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6507 1a8010ca-5511-0410-912e-c29ae57300e0
Used with startcutscene. RETURN sets the frame of an ANM before it is rendered.
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6506 1a8010ca-5511-0410-912e-c29ae57300e0
Changing the frame of an IVF file is unsupported, so its only purpose is to play sounds.
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6505 1a8010ca-5511-0410-912e-c29ae57300e0
Files moved but not modified. Changes to follow in a subsequent commit.
You down with CPP?
git-svn-id: https://svn.eduke32.com/eduke32@6055 1a8010ca-5511-0410-912e-c29ae57300e0
2017-02-01 10:01:11 +00:00
Renamed from polymer/eduke32/source/anim.c (Browse further)