vault backup: 2024-08-12 11:37:59

This commit is contained in:
BlueRose 2024-08-12 11:37:59 +08:00
parent 5d5a3273ec
commit 69eaebc148
3 changed files with 51 additions and 6 deletions

View File

@ -42,8 +42,3 @@
7. 定位吉他IK错误的具体代码以及原因最后交给曹老师修复。
8. 查看ControlRig动画重定向相关逻辑最后确定是因为F08的Hips骨骼有角度造成的问题。
# 8.5~8.9
1. 解决PVW&PGM 焦段无法提高到130以上的问题。
2. 乃琳生日会场景优化。
1. 带有多个StaticMesh的场景蓝图旋转卡顿问题。
2. 罗导Sequence播放卡顿。

View File

@ -0,0 +1,9 @@
# 8.5~8.9
1. 解决PVW&PGM 焦段无法提高到130以上的问题。
2. 乃琳生日会场景优化。
1. 带有多个StaticMesh的场景蓝图旋转卡顿问题。
2. 罗导Sequence播放卡顿。
3. 传送道具初版完成。
# 8.12~8.16
1.

View File

@ -8,3 +8,44 @@
3. 物理问题可以使用 Ignore Component Transform 来解决。
manager.LayerManager.EnterLevelArea(this.preset.LevelAreaPreset.UUID, manager.LevelSwitchType);
# 角色会隐藏问题解决
1. TsIdolControllerActor.ts中绑定了若干事件
```typescript
RegisterEventListener(): void
{
this.ListenerWrapper_SwitchLiveArea = (liveAreaUUID: UE.Guid) => { this.SwitchToLiveArea(liveAreaUUID) }
this.ListenerWrapper_OnFinishCreateTmpArea = (liveAreaUUID: UE.Guid) => { this.RequireSwitchToLiveArea(liveAreaUUID) }
this.ListenerWrapper_SceneChanged = (levelName:string)=>{this.OnSceneChanged() };
this.ListenerWrapper_BeforeSceneChanged = (levelName:string)=>{this.BeforeSceneChanged() };
DirectorEventSystem.RegisterEventListener(this, DirectorEvent.OnFinishSwitchLiveAreaLocal, this.ListenerWrapper_SwitchLiveArea)
DirectorEventSystem.RegisterEventListener(this, DirectorEvent.OnFinishSwitchSubLevelLocal,this.ListenerWrapper_SceneChanged)
DirectorEventSystem.RegisterEventListener(this, DirectorEvent.BeforeSwitchLevel,this.ListenerWrapper_BeforeSceneChanged)
DirectorEventSystem.RegisterEventListener(this, DirectorEvent.OnFinishCreateTmpLiveAreaLocal,this.ListenerWrapper_OnFinishCreateTmpArea)
}
```
- ListenerWrapper_SwitchLiveArea角色移动到其他LiveArea的核心逻辑。
- ListenerWrapper_OnFinishCreateTmpArea无逻辑。
- ListenerWrapper_SceneChanged卸载所有道具this.PropComp.OnSceneChanged()
- ListenerWrapper_BeforeSceneChanged将角色与衣服从LiveAreaDetach? this.DressModel.K2_DetachFromActor()
## ListenerWrapper_SwitchLiveArea
```c++
SwitchToLiveArea(TargetLiveAreaGUID: UE.Guid): void {
console.warn(this.Identity.RootTag.TagName.toString() + ' switch to live area ' + TargetLiveAreaGUID.ToString())
this.LiveAreaGIUD = TargetLiveAreaGUID
this.SetTransformToLiveArea()
if (this.PropComp.DressModel && this.PropComp.DressModel.MovementComp&&this.PropComp.DressModel.MovementComp.ManulMovement) {
console.warn(this.PropComp.DressModel.GetName() + ' is in free move mode, will not teleport to new area!')
return
}
var liveAreaMgr = LiveAreaUtils.GetLievAreaManagerInstance(this)
if (liveAreaMgr && liveAreaMgr.IsTmpLiveArea(TargetLiveAreaGUID)) {
// teleport to the target live area without fx
this.PropComp.Teleport(TargetLiveAreaGUID)
} else {
this.PropComp.DressModelTeleport(TargetLiveAreaGUID)
}
}
```