|
2021-11-19 16:54
조회: 12,225
추천: 29
첨부파일
common.zip [1Kb] (모드 개발자용) 광원 이펙트 활용과 응용맨날 인벤에서 공략을 집어만 먹다가 연구결과를 공유해보기로 했습니다. 내가 원하는 색을 효과로 낼 순 없을까 하는 의문이 들어 한참을 찾은 결과물입니다. 광원을 조정할 수 있는 컴포넌트는 총 3가지가 있습니다. 그것들 중 제가 사용법을 파악한 것은 PointLightDefinitionComponent 라는 녀석입니다. 다른 녀석들은 어떻게 쓰는건지 모르겠는 것도 있고 아이템 같은데에 적용했다간 튕겨버리는 사고가 나기도 하므로 사용법이 완전히 알려지기 전까진 이것만 쓰는 것이 안전할 것 같습니다. 일단 해당 컴포넌트는 다음과 같이 정의됩니다. type PointLightDefinitionComponent = { type: 'PointLightDefinitionComponent'; name: string; color: { x: number; // red. 0.0부터 1.0까지의 숫자 y: number; // green. 0.0부터 1.0까지의 숫자 z: number; // blue. 0.0부터 1.0까지의 숫자 }; power: number; // 빛의 강도. -150.0부터 10000000.0까지의 숫자 (후술) radius: number; // 빛의 반경. 10.0부터 1000.0까지의 숫자 // 빛 처리 방법인거 같음. 귀찮아서(...) 테스트 해보다 관둠. lightMask: 1 | 2 | 4 | 5 | 8 | 9 | 10 | 15 | 68 | 69 | 72 | 74; attenuation: number; // 빛 처리에 쓰이는 숫자. 0.0부터 1.0 사이의 숫자 // https://en.wikipedia.org/wiki/Computer_graphics_lighting#Lighting_interactions // 빛 처리에 쓰이는 숫자. 0.0부터 1.0 사이의 숫자 diffuseContribution: number; specularContribution: number; isLocalLight: boolean; // 뭔지 모르겠음 } 타입스크립트 문법으로 적었습니다. 이것을 활용하면 정해진 위치에 광원을 만들 수 있습니다. 실제로 어떻게 쓸 수 있을지는 예시를 고민하다가 그냥 제 스킨에 넣으려고 한 기능을 그대로 공유합니다. modname.mpq/data/hd/overlays/common 에 첨부된 압축파일에 들어있는 두 파일을 넣으시면 됩니다. 그 다음에 콜투 버프를 쓰면 이렇게 됩니다. ![]() 정말 문자 그대로 광원을 넣은것이라서 빛끼리 닿으면 빛의 3원색으로 합성됩니다 (뭉게뭉게 보이는것은 용병이 낀 통찰로 인한 오라 효과입니다) 이 효과는 아이템뿐만 아니라 이곳저곳 넣을 수 있으므로 활용성이 높습니다. 아래는 주의사항입니다. 1. color의 값은 1을 넘길 수 있습니다. 근데 넘기면 눈갱 일어납니다. (블자는 1을 넘기지 않게 사용했습니다) 2. 개인적인 견해로는 power는 5만을 넘기지 않는 것이 좋아보입니다. 눈갱 일어납니다. (위에 최대값으로 적어놓은 것은 블자가 인게임에 직접 써먹은 값입니다) 3. 같은 이유로 radius도 20을 안 넘기는게 좋아보입니다. power랑 합체하면 게임을 눈 뜨고 볼 수 없습니다. (위에 최대값으로 적어놓은 것은 블자가 인게임에 직접 써먹은 값입니다) 4. attenuation값은 유체등에 닿았을 때 빛이 감쇄하는 것에 대한 값인가본데 어차피 카생하고 카우방만 도니까 상관 없잖아요? (....) 5. 나머지 효과 둘은 SpotLightDefinitionComponent, DirectionalLightDefinitionComponent 입니다. 셋 다 color와 power 등의 공통 속성을 가지지만 미미하게 조금씩 다릅니다. 그리고 맨 뒤 녀석은 템에 먹인 후 템을 착탈하면 튕깁니다.
EXP
112,885
(11%)
/ 135,001
인벤 레벨 이거 오르긴 하는건가?
글 목록
- 당신은 ○린이도 응애도 아닙니다: https://item4.blog/2023-10-13/neither-a-child-nor-a-baby/
|
common.zip [1Kb]
추가아이템