-
Notifications
You must be signed in to change notification settings - Fork 37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Framework and Platform improvements (App, Math, Graphical, Storage) #60
Conversation
This reverts commit 7c55fe9.
Ease has been reworked.
Hey, this looks quite good, thank you! Few small thoughts:
|
I put in obsolete-marked redirects for Easers. |
Awesome, this looks really great, thanks for all the fixes and additions! :) |
Hmm I'm getting a |
Yeah the error seems to occur if I create a Target, dispose it immediately, and then create another one. It re-uses the GL ID and something bad happens in |
Fixed this - it was an issue with deleting a texture while it was bound to a slot, and now that the slot stuff is actually caching properly, it broke. Pushing a fix! |
Changes:
App
now allows passing a preferred renderer as an optional argument, defaults to Renderers.NoneBatcher.Text()
no longer starts a new batch every whitespace character (caused many extra draw calls)ShaderDefaults
has been changed to use verbatim text (multiline) literals to improve maintainabilityEase
:In
,Out
, andInOut
variants of an Easer based on one or two provided, also accepts the others being specifiedQuartic
easer (t = t^4)stateTextureSlots
to not be updated (thus causing a rebind of the texture every time)ARRAY_BUFFER
and does not rebind if matching (reduces rebind calls notably)ELEMENT_ARRAY_BUFFER
and does not rebind if matching (reduces rebind calls notably)DEBUGPROC
arguments now aligned with source argumentcase
statements now consistently have an indenti ++
changed toi++
for consistencyAdditions
Content
: Read-only file access API with default impl, virtualWritableContent
: derives from Readable, allows writing to files, also with default impl, virtualUserStorage
(static class): Accepts a WritableContent global (Creates default one atApp.UserPath
). This allows it to reuse working API, still allows overriding it for specialized accessAPI change/addition examples:
Ease:
Content:
Effect on draw calls:
Benchmark details:
Release
configuration and linked to the benchmark viaProjectReference