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

Community Asset Submissions for MCprep #245

Closed
TheDuckCow opened this issue Oct 2, 2021 · 33 comments
Closed

Community Asset Submissions for MCprep #245

TheDuckCow opened this issue Oct 2, 2021 · 33 comments
Labels
community-challenge Part of an official MCprep community challenge, typically asset contributions enhancement Feature requests or new functionality suggestions
Milestone

Comments

@TheDuckCow
Copy link
Member

MCprep Asset community challenge!

We are seeking YOUR help to add new assets to MCprep! Show your skills, learn something new, and contribute back to MCprep by submitting to this October challenge. Bonus: Submissions for ["entities"] assets will be part of the upcoming Entity Spawner (timeline: Early November), however all assets will be evaluated to include in MCprep (see below for details).

We are looking for submissions of (these are ideas only):

  • Entities (like rigged boats, text-editable signs, rigged bow and arrows), see ideas here This is the preferred submission type, given the upcoming feature!
  • Mob rigs (like zombies or players), see missing rigs here
  • Particle systems (like preset rain effects, explosions), see ideas here
  • 3D modeled blocks for meshswapping (like custom wheat, 3D grass, flowers), see missing here

How to enter this challenge

Anyone can join the challenge by following these steps:

  1. Develop an asset yourself. It should be original work, made in blender. It should be something from Vanilla Minecraft in order to be considered to include in MCprep.
  2. Create a new comment (reply) to THIS thread, attaching your blend file directly. Optionally attach a screenshot too so others can visualize your great work!
  3. Include your name/title to be used in the credits section. You may optionally supply a twitter/youtube/other social link.
  4. In your comment, explicitly confirm: "I understand that I am providing this asset for use under the CC-BY (attribution) license". By doing so, you affirm you understand others may use or extend your asset without restriction, so long as they provide credit back to you or MCprep itself (which will include you in its credits).

Deadline - Oct 31st!

To be part of the next MCprep release, and be celebrated as a challenge participant, post your entries by October 31st!

Q&A section

I submitted my asset! But where can I show it off?

Share it on social media! We suggest you post it with a link to your comment on this thread (right click top right, copy link), and use the #MCprep hashtag.

Does it have to be a Minecraft Vanilla [mob, block, item, entity, effect]?

Yes, if you want to create an asset that will be added to MCprep, it must be from Vanilla Minecraft.

Will my asset be included in MCprep?

If it's not one that already exists, then yes! The MCprep Helper team may need to edit your asset slightly to fit MCprep standards, but credit will still only go to you. If an asset is not to a minimum quality bar (as analyzed by the helper team), then we may ask for revisions or update it ourselves.

Can I remake an asset already found in MCprep?

Yes, and it will be considered for replacing the existing asset. However, you are encouraged to focus on submitting assets not currently in MCprep. At a minimum, your contribution will live on in this repository.

Can I enter multiple assets?

That would in fact be encouraged! Don't sacrifice quality, but having more entries means more assets available to future MCprep users (yay!)

What if there are multiple submissions for the same asset?

That's ok! Please note this is not a contest, but a challenge to flush out what is missing from MCprep while also honing your 3d skills. However, only one version of any given asset will be included in MCprep to keep its download size optimized, decided on by the MCprep Helper team.

What best practices should I follow when creating assets?

  • Use official Minecraft vanilla textures. We want the default assets in MCprep to have a consistent feel and look, and be widely useable.
  • Make sure any textures are packed into the blend file.
  • Name any bones and objects in your blend file. For bones that have left/right versions, use .L and .R suffixes so that tools like "paste flipped pose" work.
  • For any rigs: Name the root bone of your rig ROOT or MASTER. The root bone should be placed such that the "tail" of the bone is at the same level as the feet when the armature is in rest mode.
  • Don't create overly stylized assets - excessive subdivision, custom textures, or (excessive) 3D extensions that make the rig stick out too much from anything else in MCprep may lead to it not being included. Some detail is good though!
    • Take a look at what's included in MCprep today to get an idea of what's expected.
    • The VMcomix rig is good example of what generally would be considered "too stylized", while the current Zombie rig is more on the fence.
  • Avoid excessive driver use. Drivers slow blender down, but they do have their place.
  • Make your assets to scale! You should be able to append it into an imported world where 1 blender unit = 1 meter, and have it fit without further scaling.

When will MCprep be updated with the new assets?

The plan is to release the MCprep update in November 2021.

What's the reward for entering the challenge?

Mostly the warm fuzzy feeling of contributing back to MCprep! But we'll also do some shout-outs for everyone who joined, pointing back to this page as a record of that. Expect a recap "challenge community" render to go out on social media and a potential youtube video too.

I have more questions!

Please join our discord server, and ask away under #contest-discuss.

@TheDuckCow TheDuckCow added the enhancement Feature requests or new functionality suggestions label Oct 2, 2021
@Roni-Raihan
Copy link

boat.zip

happy to contribute. this is a rig boat. texture is already in the .blen file.
I understand that I am providing this asset for use under the CC-BY (attribution) license
Credit to my youtube channel page on behalf of TRPHB Animation: https://www.youtube.com/c/TRPHBAnimation/

@Roni-Raihan
Copy link

bow, arrow, crossbow.zip
I also make rigs for bow, arrow, crossbow. all the vanilla textures are in the .blen file. and sorry for the file name and bone name using my country's language, Indonesia. (i forgot to change it to english)

I understand that I am providing this asset for use under the CC-BY (attribution) license
Credit to my youtube channel page on behalf of TRPHB Animation: https://www.youtube.com/c/TRPHBAnimation/

@Roni-Raihan
Copy link

I also made crack material for solid blocks. block texture can be replaced with anything or just want to use a crack texture too. hope this can be usefu

here is a video how to use it
https://user-images.githubusercontent.com/82071318/136154799-86f520ed-9cfb-4bcb-813c-e0cfdd5a9dc3.mp4

video how to use it is also available in .zip file
retakan.zip

I understand that I am providing this asset for use under the CC-BY (attribution) license
Credit to my youtube channel page on behalf of TRPHB Animation: https://www.youtube.com/c/TRPHBAnimation/

@TheDuckCow
Copy link
Member Author

Thanks a ton @Roni-Raihan for your contributions, setting a high bar for everyone!

@TheDuckCow TheDuckCow added the community-challenge Part of an official MCprep community challenge, typically asset contributions label Oct 12, 2021
@TheDuckCow
Copy link
Member Author

With this, that concludes the community challenge - of course, MCprep will always take in new asset suggestions though. Will mark this issue as closed once MCprep releases with these assets.

@TheDuckCow TheDuckCow added this to the v3.2.6 milestone Nov 3, 2021
@Ageofherosmedia
Copy link

Shield.zip

@TheDuckCow
Copy link
Member Author

Closing this thread now as all the above have been integrated into the v3.2.6 release (to be released by the end of the year here). Thanks again all!

@Roni-Raihan your crack material is not part of this immediate release, I'm actually hoping to build more of a function out of this! I have to think a bit further how to wrap the UI around it or where to present it, but will notify you once I have (and maybe get your feedback).

@Ageofherosmedia messaged separately about ensuring I get the right credit URL for you, which will end up in the README file.

@StandingPadAnimations StandingPadAnimations changed the title Asset Community Challenge (Oct 2021) Community Asset Submissions for MCprep Feb 26, 2022
@StandingPadAnimations
Copy link
Collaborator

StandingPadAnimations commented Feb 26, 2022

For anyone still interested in submitting assets, just message on this thread.

Some ideas for assets include:

  • Replacing a rig. This is mostly if a rig is broken or could be better made
  • A simple version of a rig. Basically, a rig that doesn't overwhelm the user
  • A rig that doesn't exist yet. This could be rigs for new mobs or mobs that simply don't exist yet in MCprep

Here are some suggestions from TheDuckCow's message:

  • Use official Minecraft vanilla textures. We want the default assets in MCprep to have a consistent feel and look, and be widely useable.
  • Make sure any textures are packed into the blend file.
  • Name any bones and objects in your blend file. For bones that have left/right versions, use .L and .R suffixes so that tools like "paste flipped pose" work.
  • For any rigs: Name the root bone of your rig ROOT or MASTER. The root bone should be placed such that the "tail" of the bone is at the same level as the feet when the armature is in rest mode.
  • Don't create overly stylized assets - excessive subdivision, custom textures, or (excessive) 3D extensions that make the rig stick out too much from anything else in MCprep may lead to it not being included. Some detail is good though!
  • Take a look at what's included in MCprep today to get an idea of what's expected.
  • The VMcomix rig is good example of what generally would be considered "too stylized", while the current Zombie rig is more on the fence.
  • Avoid excessive driver use. Drivers slow blender down, but they do have their place.
  • Make your assets to scale! You should be able to append it into an imported world where 1 blender unit = 1 meter, and have it fit without further scaling.

@zNightlord
Copy link
Contributor

Start early and simple with the frog, taken from my MCB asset rigs @znightTrung on Twitter
How to use it? Frog has 3 types/variants so the body object use a Geometry Nodes modifier to switch that if it's fine for the time being. There is still something I want to add for it.
image
MCB_Frog.zip

@TheDuckCow
Copy link
Member Author

Nice! @zNightlord are you planning to do more with the rig, or do you think it's ready to use as is? And is that the credit url you want then, https://twitter.com/znightTrung?

@zNightlord
Copy link
Contributor

zNightlord commented May 29, 2022

Nice! @zNightlord are you planning to do more with the rig, or do you think it's ready to use as is? And is that the credit url you want then, https://twitter.com/znightTrung?

Sorry. It's already ready somehow.
I was thinking about bring the Geometry Nodes switch to the Rigify rig layer panel for easy access.
It can modify the value but not really update the actually thing maybe that has something to do with current state of the API for GN. Or maybe just put it as a rig slider. *I want to put in the Rigify layer panel cause it relate more to customization
The allay mob rig should be coming next.

@zNightlord
Copy link
Contributor

zNightlord commented May 29, 2022

MCB_Allay.zip
image
Since the Allay's arms quite tiny so I decided to not doing sharp bend on this one. Should this have facial later on?
*Update basic glow material

@TheDuckCow
Copy link
Member Author

Thanks for sharing both of these! I'll be taking a look. Generally I'm avoiding including geometry nodes in rigs at all just to ensure that there is good backwards compatibility, but I'll take some time later to do some quick QA and see if I run into any issues.

In terms of scripts, if there are any scripts that should go along with the rig, I end up putting that alongside the blend file with a .py extension, so that MCprep auto loads it. Even if it's coming from rigify, would need to be its own script so that it stays compatible with the way that MCprep can load scripts (but I can take a look at what that involves).

@DigitalDan-68
Copy link

Sending in the warden rig I recently made. The way it's rigged is more in line with the promotional trailers then what most would consider is the minecraft animation style.
image
The rig has full IK-FK Support for the arms and legs.
image
The legs have a Minecraft Dungeons style of bending.
l9OWgCt
Has an animated material for the Heart and Sculk patches.
image
I've also included the Sonic Boom Attack, although this could probably be done a lot better.
d58uWA9

And that's everything, Here is the file itself:
Warden.zip

I hope the rig is added and many others can use it!

Credits:
Rig by (Me) @DigDanAnimates on Twitter

@Roni-Raihan
Copy link

holiday has arrived, now back to work on unfinished projects including the cat rig. Planning to share this cat rig with MCprep 😄️
untitled

@TheDuckCow
Copy link
Member Author

Amazing @Roni-Raihan - if you happen to be able to share within the next ~3-5 days, then I can be sure it's included in the next MCprep release!

@TheDuckCow
Copy link
Member Author

TheDuckCow commented Jul 4, 2022

Updated, see following comment after this


Hello all! On a going forward basis, please try to avoid using these settings when creating your rigs:

Screen Shot 2022-07-04 at 10 29 17 AM

These were introduced in Blender 3.0, and it breaks backwards compatibility. As a test, you can always try importing your model into Blender 2.93 and see if your rig appears (if having trouble, open your rig in blender 3.0, then save as a new file, then open blender 2.93 and append the collection from the 3.0 file you just saved). It's a decent bit of manual effort for me to fix, but I'm working through it on these rigs submitted where needed.

To avoid using these transforms, you just need to make sure your source bone object has the right scale and orientation. This is required to continue ensuring MCprep works across a wide range of versions of blender. Believe it or not, following this allows me to continue supporting these rigs as far back as blender 2.78. Thanks!

@TheDuckCow
Copy link
Member Author

Minor update, I actually have to take back what I said in the last comment - unfortunately, it appears that vertex group data is completely lost when going form blender 3.0 to 2.9 or earlier. There's no non-trivial workaround for this, aside from exporting rigs to FBX and reimporting. I may end up having to do this simply to provide backwards compatibility, but all aspects of customized blender controls (properties, drivers, advanced material animation, and custom bone shapes) would be lost during this conversion.

I strongly encourage anyone where possible to create their rigs in Blender 2.93 for the most compatibility, but knowing this problem won't go away, I'll be seeing about other tech alternatives.

@zNightlord
Copy link
Contributor

zNightlord commented Jul 5, 2022

Backport the Frog to 2.93:
Switching the geometry to a driver method. Now the variant switch is on the rig panel.
MCB_Frog_293.zip
2022-07-05 15-04-26

@TheDuckCow
Copy link
Member Author

You're a rockstar @zNightlord for doing this, thanks a million for helping us improve backwards compatibility! You also made some great notes for others who end up dealing with this (which will include me, too); full credit to you:


What to change: 3.0 -> 2.93
EditBones:
BendyBone ScaleIn and ScaleOut 0.0 -> 1.0 (3.0 added new Scale Z axis)
PoseBones:
Bone Viewport display: Custom Shape Scale to 0.0 -> 1.0 (3.0 added new Transform settings)
Constraint Local Space (Owner Orientation) -> Local Space possible breaking in rig certain case
Constraint Mix mode in 3.0 they split Mix mode to Full, Align and Split change it to the correspond Before Original or After Original

About the bone controller and losing vertex groups
how I deal with it is export the deform rig version of it with fbx to preserve the rig vertex group
and append the rig armature back from 3.0+ to 2.93

@Banana-Blu
Copy link

Banana-Blu commented Jul 6, 2022

Here is the spyglass model! Sadly there is no rig
For the credits just my github nick
Spyglass.zip
.

@TheDuckCow
Copy link
Member Author

Thanks @Banana-Blu! And though I appreciate not needing to be credit, all provided assets are given credit. If nothing else I will use your name Banana-Blue as you have registered here and link to your GitHub profile.

Model looks good, might not even really need a rig at all which is fine.

@Banana-Blu
Copy link

Ok, happy to have helped!

@Roni-Raihan
Copy link

I want to confirm a bit, I haven't finished the cat rig yet. But it's good enough because it's not that far, so I can pass it on at 2.93 😁

tes.2-7-22.mp4

@TheDuckCow
Copy link
Member Author

TheDuckCow commented Jul 9, 2022

Nice work @Roni-Raihan, excited to see it when finished! If by chance you get it ready in the next couple days, I can include it in the next MCprep release, otherwise the release right after isn't a problem.

At this point, I just need to work on backporting the Warden rig as well as the Allay.

@TheDuckCow
Copy link
Member Author

Minor FYI @zNightlord that I went through the rest of my standardization process, and I was able to make your frog rig even further backwards compatible (by creating some slight modifications to the script and a slight mod to how the material nodes work, as for some reason the Average vector node was behaving differently in blender 2.8 and 2.7). You'll see it once MCprep releases.

I'm going to work on the Warden rig update next, and then I'll get to doing the Allay (if you happened to have started on that please let me know!).

@TheDuckCow
Copy link
Member Author

Small update. I've given up on trying to backport the Warden rig, it's too complex with too many constraints and properties, my time is not best suited here. And regardless, this issue is going to continue. So instead, I've outlined a workaround here that TL;DR surmounts to stripping the rig down to basics after an FBX export:
#317

@zNightlord
Copy link
Contributor

zNightlord commented Jul 17, 2022

Small update. I've given up on trying to backport the Warden rig, it's too complex with too many constraints and properties, my time is not best suited here. And regardless, this issue is going to continue. So instead, I've outlined a workaround here that TL;DR surmounts to stripping the rig down to basics after an FBX export: #317

I checked and backported it.
Warden_293.zip
image
I forgot about sonic boom thing. It's missing texture for me.

image

Here is the script i made for the boneshape issue, which take the 3.0 transformation and create another set of boneshape in world space similiar to how rigify handle it except for the mirroring but it is fine.

import bpy
from mathutils import Matrix,Vector,Euler
C = bpy.context

obj = C.object
obj_matrix = obj.matrix_world

pbs = obj.pose.bones

for pb in pbs:
    sh = pb.custom_shape
    if sh is not None:
        pb_matrix = obj_matrix @ pb.matrix # pose bone to world space
        # get 3.0 bone shape transform
        T = Matrix.Translation(pb.custom_shape_translation)
        S = Matrix.Diagonal(pb.custom_shape_scale_xyz).to_4x4()
        R = pb.custom_shape_rotation_euler.to_matrix().to_4x4()
        # bone length uniform scale
        len_bone = pb.length
        L = Matrix.Scale(len_bone,4)

        # create new boneshape object
        new_sh = sh.copy() 
        new_sh.data = sh.data.copy()
        C.collection.objects.link(new_sh) #link it to the scene optional
        
        # align it to world space
        new_sh.matrix_world = pb_matrix
        # transfrom the boneshape 
        new_sh.data.transform(T @ R @ S @ L)
        
        # apply and clearing out the 3.0 transform
        pb.custom_shape = new_sh
        pb.custom_shape_translation = Vector((0.0,0.0,0.0))
        pb.custom_shape_rotation_euler = Euler((0.0, 0.0, 0.0), 'XYZ')
        pb.custom_shape_scale_xyz = Vector((1.0, 1.0, 1.0))
        # unfortunately this need to be false
        pb.use_custom_shape_bone_size = False

@TheDuckCow
Copy link
Member Author

Absolute rockstar legend @zNightlord, this will definitely work much better than my quick workaround FBX version. Thanks for also sharing that script as well, will note that down and possibly create a more official guide for this. All this being said, I still will consider it at this point a "bonus" for future rigs to be made backwards compatible (and thus not block inclusion), but it's a good thing to do where we can.

I actually skipped including the sonic boom anyways, I'm thinking that should be an animated instance effect like TNT explosions (though still needs to be created, we can get there in the future).

@zNightlord
Copy link
Contributor

zNightlord commented Jul 18, 2022

allay._293.zip
image

backport, fix a minor issue with the previous version have (wing naming is backward and also now it has the same naming as other wing rig in my wip rigs) add 90 sharp bend.

For the backport Warden, there is an issue I haven't fixed is the custom properties min and max value just need to reset it back to 0 and 1.
Warden_293.zip

@Roni-Raihan
Copy link

Roni-Raihan commented Jul 21, 2022

finally finished. At first I wanted to make the cat's mouth open, and I tried to make one. but the results are not suitable because it turns out that the cat's mouth only consists of a few pixels. so i returned it.
the cat texture included in the blen file is just a jelly cat. but i think it's okay. if you want to replace it, the way is the same as usual.
cat rig

here it is
cat.zip

@TheDuckCow
Copy link
Member Author

Thanks for the contributions all!

Officially removing this from pinned issues as we now have a formal template for submitting [assets here[(https://github.com/TheDuckCow/MCprep/issues/new?assignees=&labels=enhancement&template=Asset-Submission.yaml), please use this moving forward (you can submit an initial version of your rig and update later if you want).

A couple assets had some wonky scales, but don't worry I'll take care of fixing those. Just remember this for the future!

@TheDuckCow TheDuckCow unpinned this issue Aug 1, 2022
@StandingPadAnimations
Copy link
Collaborator

I'll link this issue template to MCprep Helpful Horse when I get the chance

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
community-challenge Part of an official MCprep community challenge, typically asset contributions enhancement Feature requests or new functionality suggestions
Projects
None yet
Development

No branches or pull requests

7 participants