Expand material node-trees
This commit is contained in:
@@ -303,6 +303,21 @@ class ExpandID:
|
|||||||
tex = item.get_pointer(b'tex')
|
tex = item.get_pointer(b'tex')
|
||||||
yield tex
|
yield tex
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def _expand_generic_nodetree(block):
|
||||||
|
assert(block.dna_type.dna_type_id == b'bNodeTree')
|
||||||
|
|
||||||
|
sdna_index_bNode = block.file.sdna_index_from_id[b'bNode']
|
||||||
|
for item in bf_utils.iter_ListBase(block.get_pointer(b'nodes.first')):
|
||||||
|
item_type = item.get(b'type', sdna_index_refine=sdna_index_bNode)
|
||||||
|
|
||||||
|
if item_type == 143: # SH_NODE_TEX_IMAGE
|
||||||
|
yield item.get_pointer(b'id', sdna_index_refine=sdna_index_bNode)
|
||||||
|
|
||||||
|
# import IPython; IPython.embed()
|
||||||
|
# print(item.get(b'name', sdna_index_refine=sdna_index_bNode))
|
||||||
|
# print(item.get(b'type', sdna_index_refine=sdna_index_bNode))
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def expand_OB(block):
|
def expand_OB(block):
|
||||||
yield block.get_pointer(b'data')
|
yield block.get_pointer(b'data')
|
||||||
@@ -327,6 +342,10 @@ class ExpandID:
|
|||||||
def expand_MA(block):
|
def expand_MA(block):
|
||||||
yield from ExpandID._expand_generic_mtex(block)
|
yield from ExpandID._expand_generic_mtex(block)
|
||||||
|
|
||||||
|
block_ntree = block.get_pointer(b'nodetree')
|
||||||
|
if block_ntree is not None:
|
||||||
|
yield from ExpandID._expand_generic_nodetree(block_ntree)
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def expand_TE(block):
|
def expand_TE(block):
|
||||||
yield block.get_pointer(b'ima')
|
yield block.get_pointer(b'ima')
|
||||||
|
Reference in New Issue
Block a user