Suic
nice
- Jul 15, 2014
- 721
- 328
- 750
This thread is a show-off of my current progress of being able to do anything model/animation related all inside Blender which is an industry standard tool for freelance modelers/animators (from what I've read Maya is only way more common in companies, probably because support for them is better and Blender didn't always use to be as good as it is currently)
I was not going to post this until i was finished with all or nearly all of my goals, however since there will likely not be any significant progress within the next months as I'll be busy working on other things and I feel like this is already worth showing off, given that i feel like I've pretty much fully finished the most important part of it (animations) I decided to do it and perhaps this will also serve as some kind of extra motivation once i start working on it constantly again.
I started with this project at the very end of last summer and worked on it almost full-time until the start of november, after that i've also been working on it steadily, but not as much
Motivation
I've always wanted to create a tool that lets you do animations inside blender since 2020 and i did attempt it when i first got the idea, however I never ended up making that much progress and i stopped, I also lost most motivation for rsps the year after that and in 2022-2023 i was doing something completely different outside of rsps, however in 2024 I saw that Dane was trying to do it and he actually made some pretty decent progress with the legacy system (by far the most progress compared to anyone else that has attempted this before from what i know) so about 5 months after i saw Dane's blog about it, I decided to give it a go again because I had learned quite a bit more about models/animations since my last attempt and this time i actually wanted to finish it, no matter how long it took
At some point i considered creating my own animation editor, however I figured i would never be able to create anything as good as blender in reasonable time and that just creating an add-on for blender was the best way to go, especially because i wanted to also support the skeletal animation system (for just the legacy animation system, I could've probably made something pretty good on my own, si
The goal is to be able to do the following inside Blender:
Modeling
* Creating or editing existing geometry (Vertices, Edges, Faces)
* Coloring faces using the color palette used in OSRS (and many other revisions), that way what you see in blender will very closely match what you see in game (especially if lighting is setup properly)
* Texturing faces using the OSRS texture mapping system which uses projection planes, that way what you see in blender will match what you see in game 1:1
* Changing the alpha per face (This is how it works in RS)
* Assigning or editing any custom properties (face priorities, vertex labels, triangle labels)
* A lot more that is related to the above to make things as efficient and convenient as possible, an example would be a lot of tools to speed up texture mapping, e.g. a tool to automatically generate a texture plane for a set of selected faces
Animating
* Full support for the legacy animation system
* Full support for the skeletal/maya animation system that osrs added a few years ago (also used in RS3)
Full support for the legacy animation system includes:
* Ability to export a model together with it's skeleton from rs to blender with a properly generated hierarchy (i.e. bones are linked to each other the way you'd expect), I say generated because there is no explicit info in the cache that says how bones are connected, but I have found a reliable way to infer it, also i say bones even tho the legacy system uses labels and i did that because it makes more sense and a label is equivalent to a bone such that there is exactly one influence per vertex
* Ability to create custom animations for existing skeletons (e.g. the player skeleton)
* Ability to define your own custom skeleton inside blender
* Ability to create custom animations for custom skeletons
* Ability to Bake interpolated frames for a more accurate result, it is also possible to bake at a step really easily to make more choppy animations that fit rs better
* Ability to create vertex labels automatically for custom skeletons, this works pretty well sometimes but often requires manual adjustments for a great result (works a lot better for the skeletal animation system due to it supporting multiple bone influences)
* Ability to use inverse kinematics (for both existing and custom rigs!) this makes creating animations **a lot** easier/more convenient
* Ability to create alpha transforms really easily
* Ability to use multiple interpolation modes, easing modes and also create your own custom bezier curves for interpolation (This is only possible because of the ability to bake frames)
* Channel level optimization for frames, not really necessary since the legacy animation system is already light-weight, however i still implemented it as it was simple enough to do
Full support for the skeletal animation system includes:
* Ability to export a model together with it's skeleton from rs to blender, this also comes with a proper hierarchy (with the same exact bone connections that jagex uses as for the skeletal system all of that info is available in the cache)
* Ability to create custom animations for existing skeletons
* Ability to define your own custom skeleton inside blender
* Ability to create custom animations for custom skeletons
* Ability to bake interpolated frames (also supports a step size to intentionally make animations more choppy to fit rs better)
* Ability to automatically weight the model (this can fairly often produce a result that works well enough that it doesn't need any further changes)
* Ability to use inverse kinematics (also for both existing and custom rigs)
* Ability to create alpha transforms (equally as easily as it works the same way as for the legacy system, the only difference is that the changes in alpha can be more smooth cause the legacy system uses steps of 8 or 0.03125 in the 0-1 scale)
* Ability to use multiple interpolation modes, easing modes and also create your own custom bezier curves for interpolation, however instead of having to bake in frames, cubic bezier curves/splines (which is what are most popular and cubic bezier is also the default in blender) are supported directly in the client, meaning that baking frames isn't always necessary which saves space
* Export options for optimizing animation curves to save space, both on the channel and channel-component level (for heavy optimization)
Note: since the skeletal animation system has basically no limitations, it is possible to use tools like rigify, mixamo (In fact both of these were used for the backflip animation seen in
At this point, I have finished everything animation related, for both the legacy and skeletal animation system
For modeling everything is done except texturing which i only started on today and got something super basic working, but there's still a lot to do if i want to make it as easy as possible for the user to do texturing using the OSRS/RS2 texturing system
Below is some media, mainly showcasing simple and complex animations exported from Blender to RS (Legacy system only includes simple examples cause I haven't gotten anyone to make a complex enough animation and I'm not an animator myself, but in theory any sort of animation is possible to create) some of these are quite old, some recent, I will update this thread with more examples whenever I'll get some decent enough animation made
Note: some gifs are from my own tool, however the animations are already in RS format and I'm playing them the same exact way the client does, so they're identical to what it'd look like in game



Backflip animation from Mixamo applied to the character model, this uses the skeletal system but it'd also be possible to create using the legacy system, it'd just require many more bones to make it as smooth (was mostly as a meme but to also showcase how great the skeletal animation system is)

Very basic example of texturing (I only started working on this today)

In the gifs pretty much all of the animations are as smooth as they were in blender, for RS they don't fit that well, however with just a few clicks it'd be possible to make them choppier and they'd fit in much better
It is also possible to by default just create choppier animations in blender very easily
Credit to Shawn for creating the tortoise(?) with a plant model and animation and also rigging the character model using rigify and re-targeting the backflip animation from mixamo for it
The goal in the future, would be to fully finish implementing texturing/texture mapping in blender using the OSRS/RS2 texture mapping system
There are some other more minor goals, but the primary one is to be able to easily do texturing in blender
At some point I may make a thread about how i did parts of it and the struggles, because finishing this for the legacy animation was a huge pain, skeletal system also took quite some time because it's a somewhat complicated format not just the most average skeletal animation system implementation but it was pretty fun to do unlike the legacy system
Note: This tool is not for sale
I was not going to post this until i was finished with all or nearly all of my goals, however since there will likely not be any significant progress within the next months as I'll be busy working on other things and I feel like this is already worth showing off, given that i feel like I've pretty much fully finished the most important part of it (animations) I decided to do it and perhaps this will also serve as some kind of extra motivation once i start working on it constantly again.
I started with this project at the very end of last summer and worked on it almost full-time until the start of november, after that i've also been working on it steadily, but not as much
Motivation
I've always wanted to create a tool that lets you do animations inside blender since 2020 and i did attempt it when i first got the idea, however I never ended up making that much progress and i stopped, I also lost most motivation for rsps the year after that and in 2022-2023 i was doing something completely different outside of rsps, however in 2024 I saw that Dane was trying to do it and he actually made some pretty decent progress with the legacy system (by far the most progress compared to anyone else that has attempted this before from what i know) so about 5 months after i saw Dane's blog about it, I decided to give it a go again because I had learned quite a bit more about models/animations since my last attempt and this time i actually wanted to finish it, no matter how long it took
At some point i considered creating my own animation editor, however I figured i would never be able to create anything as good as blender in reasonable time and that just creating an add-on for blender was the best way to go, especially because i wanted to also support the skeletal animation system (for just the legacy animation system, I could've probably made something pretty good on my own, si
The goal is to be able to do the following inside Blender:
Modeling
* Creating or editing existing geometry (Vertices, Edges, Faces)
* Coloring faces using the color palette used in OSRS (and many other revisions), that way what you see in blender will very closely match what you see in game (especially if lighting is setup properly)
* Texturing faces using the OSRS texture mapping system which uses projection planes, that way what you see in blender will match what you see in game 1:1
* Changing the alpha per face (This is how it works in RS)
* Assigning or editing any custom properties (face priorities, vertex labels, triangle labels)
* A lot more that is related to the above to make things as efficient and convenient as possible, an example would be a lot of tools to speed up texture mapping, e.g. a tool to automatically generate a texture plane for a set of selected faces
Animating
* Full support for the legacy animation system
* Full support for the skeletal/maya animation system that osrs added a few years ago (also used in RS3)
Full support for the legacy animation system includes:
* Ability to export a model together with it's skeleton from rs to blender with a properly generated hierarchy (i.e. bones are linked to each other the way you'd expect), I say generated because there is no explicit info in the cache that says how bones are connected, but I have found a reliable way to infer it, also i say bones even tho the legacy system uses labels and i did that because it makes more sense and a label is equivalent to a bone such that there is exactly one influence per vertex
* Ability to create custom animations for existing skeletons (e.g. the player skeleton)
* Ability to define your own custom skeleton inside blender
* Ability to create custom animations for custom skeletons
* Ability to Bake interpolated frames for a more accurate result, it is also possible to bake at a step really easily to make more choppy animations that fit rs better
* Ability to create vertex labels automatically for custom skeletons, this works pretty well sometimes but often requires manual adjustments for a great result (works a lot better for the skeletal animation system due to it supporting multiple bone influences)
* Ability to use inverse kinematics (for both existing and custom rigs!) this makes creating animations **a lot** easier/more convenient
* Ability to create alpha transforms really easily
* Ability to use multiple interpolation modes, easing modes and also create your own custom bezier curves for interpolation (This is only possible because of the ability to bake frames)
* Channel level optimization for frames, not really necessary since the legacy animation system is already light-weight, however i still implemented it as it was simple enough to do
Full support for the skeletal animation system includes:
* Ability to export a model together with it's skeleton from rs to blender, this also comes with a proper hierarchy (with the same exact bone connections that jagex uses as for the skeletal system all of that info is available in the cache)
* Ability to create custom animations for existing skeletons
* Ability to define your own custom skeleton inside blender
* Ability to create custom animations for custom skeletons
* Ability to bake interpolated frames (also supports a step size to intentionally make animations more choppy to fit rs better)
* Ability to automatically weight the model (this can fairly often produce a result that works well enough that it doesn't need any further changes)
* Ability to use inverse kinematics (also for both existing and custom rigs)
* Ability to create alpha transforms (equally as easily as it works the same way as for the legacy system, the only difference is that the changes in alpha can be more smooth cause the legacy system uses steps of 8 or 0.03125 in the 0-1 scale)
* Ability to use multiple interpolation modes, easing modes and also create your own custom bezier curves for interpolation, however instead of having to bake in frames, cubic bezier curves/splines (which is what are most popular and cubic bezier is also the default in blender) are supported directly in the client, meaning that baking frames isn't always necessary which saves space
* Export options for optimizing animation curves to save space, both on the channel and channel-component level (for heavy optimization)
Note: since the skeletal animation system has basically no limitations, it is possible to use tools like rigify, mixamo (In fact both of these were used for the backflip animation seen in
At this point, I have finished everything animation related, for both the legacy and skeletal animation system
For modeling everything is done except texturing which i only started on today and got something super basic working, but there's still a lot to do if i want to make it as easy as possible for the user to do texturing using the OSRS/RS2 texturing system
Below is some media, mainly showcasing simple and complex animations exported from Blender to RS (Legacy system only includes simple examples cause I haven't gotten anyone to make a complex enough animation and I'm not an animator myself, but in theory any sort of animation is possible to create) some of these are quite old, some recent, I will update this thread with more examples whenever I'll get some decent enough animation made
Note: some gifs are from my own tool, however the animations are already in RS format and I'm playing them the same exact way the client does, so they're identical to what it'd look like in game
Spoiler for Some gifs:



Backflip animation from Mixamo applied to the character model, this uses the skeletal system but it'd also be possible to create using the legacy system, it'd just require many more bones to make it as smooth (was mostly as a meme but to also showcase how great the skeletal animation system is)

Very basic example of texturing (I only started working on this today)

In the gifs pretty much all of the animations are as smooth as they were in blender, for RS they don't fit that well, however with just a few clicks it'd be possible to make them choppier and they'd fit in much better
It is also possible to by default just create choppier animations in blender very easily
Credit to Shawn for creating the tortoise(?) with a plant model and animation and also rigging the character model using rigify and re-targeting the backflip animation from mixamo for it
The goal in the future, would be to fully finish implementing texturing/texture mapping in blender using the OSRS/RS2 texture mapping system
There are some other more minor goals, but the primary one is to be able to easily do texturing in blender
At some point I may make a thread about how i did parts of it and the struggles, because finishing this for the legacy animation was a huge pain, skeletal system also took quite some time because it's a somewhat complicated format not just the most average skeletal animation system implementation but it was pretty fun to do unlike the legacy system
Note: This tool is not for sale
Last edited: