Skip to content

Commit afdb997

Browse files
authored
Merge pull request #4 from anasrar/development
improve bake and update readme
2 parents 35bc469 + 7631d55 commit afdb997

File tree

2 files changed

+46
-6
lines changed

2 files changed

+46
-6
lines changed

README.md

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
- No worry about bone orientation and scale.
88
- The purpose is to retarget animation and clean up action with **NLA Editor**
99

10-
## Current Version : 0.0.1
10+
## Current Version : 0.1.0
1111

1212

1313
## Feature
@@ -30,7 +30,12 @@ Retarget system originally from my previous project **[Blender UE4 Workspace](ht
3030

3131
## Installation
3232

33-
Edit 🡆 Preferences 🡆 Add-ons 🡆 Install 🡆 Select **ReNimNode.zip** 🡆 Install Add-ons.
33+
- Edit.
34+
- Preferences.
35+
- Add-ons.
36+
- Install.
37+
- Select **ReNimNode.zip**.
38+
- Install Add-ons.
3439

3540
## How To Use
3641

@@ -52,20 +57,29 @@ Change editor type to **Retarget Animation Node**.
5257

5358
### Mapping Bone
5459

55-
New 🡆 Add 🡆 Object 🡆 **Target And Source Object** 🡆 Fill Target And Source 🡆 Select Target And Source Armature 🡆 Change Mode To **Pose** 🡆 Select The Bone Target First And Then Select The Source Bone 🡆 **Create Bone Node From Selected Bones** 🡆 Change Mode To **Object** 🡆 **BIND**.
60+
- New.
61+
- Add.
62+
- Object.
63+
- **Target And Source Object**.
64+
- Fill Target And Source.
65+
- Select Target And Source Armature.
66+
- Change Mode To **Pose**.
67+
- Select The Bone Target And Select The Source Bone.
68+
- **Create Bone Node From Selected Bones**.
69+
- **BIND**.
5670

5771
**NOTE** : You can mapping bone when the object node is binding.
5872

5973
![ReNim Node Mapping Bone](doc_assets/mappingbone.gif)
6074

6175
### Bake Action
6276

63-
Change Mode To **Object** 🡆 **BAKE ACTION**
77+
**BAKE ACTION**
6478

6579
**NOTE** :
6680

67-
- You can add additional bone to bake
68-
- You need **UNBIND** to view baked action
81+
- You can add additional bone to bake.
82+
- You need **UNBIND** to view baked action.
6983

7084
![ReNim Node Bake](doc_assets/bake.gif)
7185

ReNimNode/production/editorType_operator.py

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -339,6 +339,21 @@ def execute(self, context):
339339
target_object = socket_node.target_object
340340
source_object = socket_node.source_object
341341

342+
# store current mode
343+
old_mode = 'OBJECT'
344+
345+
# store current active object
346+
old_active_object = context.active_object
347+
348+
# change mode to object if current mode is not object
349+
if bpy.context.mode != "OBJECT":
350+
# overide current mode if not object
351+
old_mode = context.active_object.mode if context.active_object else context.mode
352+
bpy.ops.object.mode_set(mode='OBJECT')
353+
354+
# store selected object for seamless binding
355+
selected_objects = context.selected_objects
356+
342357
# deselect all objects
343358
bpy.ops.object.select_all(action='DESELECT')
344359

@@ -441,6 +456,17 @@ def execute(self, context):
441456
# change to pose mode
442457
bpy.ops.object.mode_set(mode='OBJECT')
443458

459+
# restore selected objects
460+
for obj in selected_objects:
461+
obj.select_set(True)
462+
463+
# change active object to old object
464+
context.view_layer.objects.active = old_active_object
465+
466+
# change to old mode if not object
467+
if old_mode != "OBJECT":
468+
bpy.ops.object.mode_set(mode=old_mode)
469+
444470
if self.unbind_after_bake:
445471
# unnbind after bake its true
446472
bpy.ops.renim.bind(node_tree_name=self.node_tree_name, node_object_name=self.node_object_name)

0 commit comments

Comments
 (0)