m-agour's Blog

Week 13: Keyframes animation is now a bit easier in FURY

m-agour
Published: 09/20/2022

What did you do this week?

  • Added the ability to have the ShowManager stored inside the Timeline. That way the user does not have to update and render the animations because it will be done internally.

  • Added a record method to the Timeline that records the animation and saves it as either GIF or MP4 (requires OpenCV). This record functionality has the option to show/hide the PlaybackPanel which makes it better than recording the animation using a third-party software.

  • Fixed some issues that Serge mentioned while reviewing PR #665

What is coming up next week?

  • Instead of adding the ShowManager to the Timeline, doing it the other way around is a better choice and makes the code more readable.
  • Add tests for the Timeline's record method.
  • Add tests for the billboard actor to test consistency among different approaches..

Did you get stuck anywhere?

I didn't get stuck this week.

View Blog Post

Week 12: Adding new tutorials

m-agour
Published: 09/13/2022

What did you do this week?

  • Restructured tutorials to be more readable and more focused on a specific topic.
  • Replaced the old animation introductory tutorial with a lot simpler one. And added tutorial to explain keyframes and interpolators.
  • Simplified setting lighting uniforms for the geometry-based-billboard actor by getting the Scene from the actor using actor.GetConsumer(scene_idx).

 

What is coming up next week?

  • Allow the Timeline to take the ShowManager as an argument to reduce the amount of code user has to write every time using FURY animations.'
  • Fix some typos in the tutorials and write some info about Slerp.
  • Find a way to fix the shader-callback problem of not being executed when the actor is out of the camera's frustum.

 

Did you get stuck anywhere?

I didn't get stuck this week.

View Blog Post

Week 11: Improving tutorials a little

m-agour
Published: 09/05/2022

What did you do this week?

  • Fixed some issues in the hierarchical order animation support PR that we discussed during last week’s meeting (mostly naming issues).

  • Explained the introductory tutorial a little. But it is not good suitable beginners. So, I will spend time improving tutorials this week.

  • Added extrusion to vector_text to allow the z-scaling to be functional.

  • Fixed lightColor0 being hard-set to (1, 1, 1). Instead, it’s now using the Scene to set the lighting uniforms.

 

What is coming up next week?

  • Improve tutorials.

  • Find out how to get the Scene from the actor instead of manually assigning it.

  • If I have time, I will try implement recording animation as GIF or as a video.

 

Did you get stuck anywhere?

I didn’t get stuck this week.

View Blog Post

Week 10: Supporting hierarchical animations

m-agour
Published: 08/29/2022

What did you do this week?

  • Implemented hierarchical order support for animations using matrices in this PR.

  • Improved the API of a PartialActor by adding some methods to control the scales, positions and colors.

  • Added a new example of using the new hierarchical feature to animate an arm robot.

  • Improved vector_text a little by adding options to control its direction.

What is coming up next week?

  • Finish the hierarchical order animation support PR.
  • Explain tutorials in more detail. See this issue.
  • Fix issues discovered by Serge in this review.
  • Fix lightColor0 being hard-set to (1, 1, 1). Instead, find a way to get this property the same way other polygon-based actor gets it.
  • Try to get PRs and issues mentioned above merged, closed or ready for a final review.

Did you get stuck anywhere?

I didn't get stuck this week.

View Blog Post

Week 9: Animating primitives of the same actor

m-agour
Published: 08/25/2022

What did you do this week?

  • Made two tutorials that show two approaches on how to animate primitives of the same FURY actor using the Timeline.
     

  • Tried sending all keyframes at once as uniforms, but I faced a performance issue doing this.

  • Set uniforms that are not being sent by VTK for the billboard actor.

 

What is coming up next week?

  • Alter the Timeline to use matrices instead of setting values directly to allow hierarchical transformation.

  • Improve the API of the PartialActor to act almost like a normal actor.

Did you get stuck anywhere?

I had some issues but didn’t get stuck.

View Blog Post