Skip to content
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

Improve Performance #7

Open
2 of 5 tasks
EriKWDev opened this issue Apr 19, 2021 · 0 comments
Open
2 of 5 tasks

Improve Performance #7

EriKWDev opened this issue Apr 19, 2021 · 0 comments
Labels
enhancement New feature or request good first issue Good for newcomers Hacktoberfest

Comments

@EriKWDev
Copy link
Owner

EriKWDev commented Apr 19, 2021

Areas with Known Big Performance Impact

  • needs fixing

  • fixed

  • tween.nim's evaluate(tweenTrack, time)

    • The evaluation currently executes every single tween every single frame when in reality we only need to execute the "current" tweens. oldTweens and futureTweens only need to be evaluated the very first time and/or whenever we seek to a time that results in a different set of "currentTweens".
  • rendering.nim's way of handling FFMpeg Instances

    • Due to some issues I had with the osproc module, I couldn't keep one single instance of FFMpeg but rather have to instantiate one, use it for a short amount of time and then kill it. This createds a bunch of "parts" files which have to be stitched together by a final FFMpeg command. This whole process could be avoided if we only had one single process. This most likely has to do with osproc's way of handling stdin has a hidden buffer of some sort that gets filled by frame-data.
  • core.nim's drawPointsWithTension and drawPointsWithRoundedCornerRadius

    • Sooner or later both of these will be deprecated and replaced with one better "drawListOfBezierPointsAndHandles" or something like that, but currently these two procs recalculate the new points every single frame for every point in every entity. This could probably be cached.
@EriKWDev EriKWDev added enhancement New feature or request good first issue Good for newcomers labels Apr 19, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers Hacktoberfest
Projects
None yet
Development

No branches or pull requests

1 participant