Git Product home page Git Product logo

Comments (3)

kbmhansungb avatar kbmhansungb commented on June 5, 2024

계획

Component에 따라 다른 움직일 수 있는 공간상의 좌표를 가지고 Movement의 트렌스폼을 조절하여 작동하는 방식을 이용합니다.

  1. (Player)움직이고자 하는 액터 또는 컴포넌트를 클릭합니다.
  2. (Movement)마우스와 좌표로 부터 상대좌표를 구합니다.
  3. (Movement)현재 마우스 위치로 부터 새로운 트렌스폼을 구합니다.
  4. (Movement)상대좌표를 이용해서 새로운 트렌스폼으로 이동시킵니다.
    1. (Movement)한 틱당 움직일 수 있는 양을 기준으로 이동시킵니다.
    2. (Movement)움직이는 공간상의 제약을 적용합니다.
    3. (Movement)충돌에 의한 물체의 이동을 재현합니다.
  • 마우스를 클릭이벤트는 클라이언트에서 호출됩니다.
  • 2에서 상대좌표를 구하지 않고 Movement를 현재 좌표로 이동시키면, 네모난 박스가 있고 옆으로 이동시킬 때, Movement의 포지션이 마우스 움직임과 움직일 수 있는 공간상의 좌표의 교차점으로 이동하게 됩니다.

추가적인 과제

  • 어떻게 테스트할 것인가?
  • 더 간결한 방법은 없는가?
  • 힘에 부쳐 느리게 움직이는 물체를 어떻게 표현할 것인가?

그외
Physics constraint도 원하는 결과를 얻을 수 있는지 확인해봐야 하나,

  1. 개인 프로젝트,
  2. 공부를 위해서,
  3. 시뮬레이션을 사용하면 제어할 수 없음,

의 이유로 구현.
단 흔들리되 게임에 영향을 주지 않는 오브젝트의 경우 피직스 컨스트레인 컴포넌트를 사용하도록 함

from unrealplugin_horrorcore.

kbmhansungb avatar kbmhansungb commented on June 5, 2024
classDiagram

HorrorMoveableInterface <|.. PlaneMoveable  
HorrorMoveableInterface <|.. CylinderMoveable  
HorrorMoveableInterface <|.. SphereMoveable  
HorrorMoveableInterface : +PreMovement(...) 
HorrorMoveableInterface : +PostMovement(...) 
HorrorMoveableInterface : +GetIntersection(...)
HorrorMoveableInterface : +ApplyMovement(...)
HorrorMoveableInterface : +ClampMovement(...)
HorrorMoveableInterface : +AdjustMovement(...)

추가적인 과제

  • 두 명이 동시에 움직일 경우에는?
classDiagram

HorrorMovingInterface <|.. HorrorMovingComponent
HorrorMovingInterface : +StartMoving()
HorrorMovingInterface : +EndMoving()

from unrealplugin_horrorcore.

kbmhansungb avatar kbmhansungb commented on June 5, 2024

언리얼에서 특정컴포넌트의 포지션과 회전이 변경되었을때 모든자식 컴포넌트의 콜리젼을 포함하여 충돌하는지 알아야 합니다.

삽질끝에 내린결론은 자신을 포함한 모든 자식컴포넌트에서 프리미티브 컴포넌트인경우 월드의 컴포넌트 스윕으로 검사하는 것입니다. (필요한 이그노어 설정 후)

여기서 제가 궁금한것은

  1. 조금더 편한 방법이 있는가?
  2. 충돌값을 가지고 자연스럽게 위치가 수정된 결과를 얻는 방법은? 예로 책상위에 종이를 손가락으로 누르고 움직일때 종이가 물체에 저항되어 로테이션이 변경되는 것을 예로 들 수 있습니다.

공부할 목적으로 피직스 컨스트레인을 사용하지 않고 만들고 있었습니다.

  1. 추가적으로 피직스 컨스트레인의 코드 작동을 설명한 내용이 있는지 궁금합니다.

ㅠ.

from unrealplugin_horrorcore.

Related Issues (13)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.