迷茫2017-04-17 17:52:57
캔버스 게임에서는 이 시나리오에 가장 최적화된 솔루션이 실제로 사용됩니다. 왜냐하면 비가 오느냐 안 오느냐가 게임의 핵심이 아니고 우리는 게임 엔진이 아니기 때문에 일반적으로 다음과 같은 작업을 수행합니다. 단순함에서 복잡함 :
PS 및 AE와 같은 다른 도구를 사용하여 아티스트가 전체 화면 비 애니메이션 그림을 그리도록 한 다음(전체 화면임을 참고) 애니메이션을 프레임별 PNG 이미지
애니메이션 컨트롤을 사용하여 현재 장면에 이미지를 그리고 프레임별로 재생합니다
파티클 시스템을 사용하여 생성하지만 파티클은 일부 주요 개체에 사용되지 않는 한 더 많은 CPU를 소비합니다. 이런 종류의 케이크는 정말 의미가 없습니다
아스팔트 등 3D 게임의 경우 물방울이 반발, 융합 등 자연스러운 효과를 낼 수 있도록 물방울 엔진을 특별히 개발(또는 구매)할 예정입니다. 물론 텍스처도 사용할 수 있습니다. , 화면 표면 아래에만 있고 장면 내부와 아래에는 없습니다.
2D 게임은 일반적으로 플랜 1을 사용합니다
그래서 질문자님이 말씀하신 장면 같은 경우는 스티커를 하나씩 붙여야 하는데, 어쨌든 빗방울이 반복되는 성능도 합리적이네요.
迷茫2017-04-17 17:52:57
입자 효과
각각의 빗방울은 입자이며, 입자에는 여러 프레임의 정적 그림이나 애니메이션이 포함됩니다.
각 입자는 고유한 좌표와 2차원 속도를 가지며 수명 주기
시간에 따라 변경됩니다. 좌표, 애니메이션 프레임번호, 비효과입니다
물론, 화면 하단으로 내려갔을 때 좌표와 속도를 다시 무작위로 뽑아서 화면 위에서 넣어줄 수도 있습니다.
PHPz2017-04-17 17:52:57
물방울이 떨어지고 움직이는 애니메이션을 만든 다음 전체 화면의 너비와 높이를 순환하고 임의의 좌표 지점에서 이 애니메이션을 생성합니다