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

Skrypt meltdown nie sprawdza czy obiekty hipoly maja przypisane materiały przez co się wysypuje #2

Open
JoseConseco opened this issue Aug 21, 2015 · 2 comments

Comments

@JoseConseco
Copy link

napisałem prostą metodę która sprawdza czy obiekty hipoly mają materiały, jeżli nie to wyświetli nazwę obiektu i przerwie skrypt:
def is_empty_mat(self,context):
mds = bpy.context.scene.meltdown_settings
pair = mds.bake_job_queue[self.job].bake_queue[self.pair]
pair_list = mds.bake_job_queue[self.job].bake_queue
if pair.highpoly != "":
if pair.hp_obj_vs_group == "GRP":
for object in bpy.data.groups[pair.highpoly].objects:
if len(object.material_slots)==0 or object.material_slots[0].material is None:
self.report({'INFO'}, 'Object: '+object.name+' has no Material!')
return True
else:
if len(bpy.data.objects[pair.highpoly].material_slots)==0 or bpy.data.objects[pair.highpoly].material_slots[0].material is None:
self.report({'INFO'}, 'Object: '+bpy.data.objects[pair.highpoly].name+' has no Material!')
return True
return False

Były by super gdybyś wrzucił to do mastera.
funkcję tą najlepiej wywołać w głównym operatorze MeltdownBakeOp zaraz na starcie funkcji execute:

def execute(self, context):
if self.is_empty_mat(context):
return {'CANCELLED'}

@MadMinstrel
Copy link
Owner

Skrypt powinien nie tyle wyświetlać komunikat i nazwe obiektu, co poradzić sobie niezależnie od tego czy jest materiał, czy nie. Jeśli nie ma, przypisać (tylko w scenie tymczasowej oczywiście).

@JoseConseco
Copy link
Author

To ja jednak sobie zostawię to tak jak jest. Wolę wiedzieć, że obiekt nie miał materiału i przypisać mu ręcznie materiał z dobrym ID. Automat nie bedzie wiedział czy tu miało być drewno, metal czy coś innego.
Swoją drogą super skrypt. Tylko wolno wypieka i wygląda jakby nie używał wszystkich rdzeni.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants