나는 학교 프로젝트를 위해 게임을 만들고 있는데, 우리는 Unity를위한 HappyFunTimes 플러그인을 사용하여 게임을 제작해야한다. 우리 그룹이 만들고있는 게임의 경우 Unity의 C# 스크립트에서 임의의 스프라이트 이미지를 생성하고 스프라이트가 휴대 전화의 컨트롤러 화면 상단에 표시되도록해야합니다. 불행히도, 내 교육의이 시점에서 나는 C#에만 익숙하므로 HappyFunTimes의 게임 패드 코드를 작업하는 데 문제가 있습니다. 어떤 도움을 주시면 감사하겠습니다.Q : HappyFunTimes를 사용하여 전화 컨트롤러에서 Unity로 생성 된 이미지를 표시하는 방법은 무엇입니까?
0
A
답변
0
Unity에서 이미지를 생성하는 방법을 모르겠습니다. 지난 번에 직접 렌더링을위한 2D API가 없다는 것을 알았습니다. (선 그리기, 직사각형 그리기, 원 그리기 등)
장면을 텍스처로 렌더링 할 수 있습니다. render texture, 렌더링 한 다음 get the data out.
아니면 그냥 배열을 만들고 작은 이미지 인 경우 값을 설정할 수 있습니다. (예를 들어, 여기에있는 그라비아 이미지 또는 QR 코드).
데이터가 있으면 base64로 인코딩해야합니다. there should be some C# functions to do that. 그런 다음 전화로 보낼 수 있습니다. 전화에 당신은 그런 다음, generate a dataURL for an image을 그대로 그 캔버스를 표시하거나, use it to draw into another canvas을, 또는 할 수 있습니다 다음 putImageData
으로 캔버스에 복사 할 수 있습니다 그것이 ImageData에 넣어, decode it에 필요한 것입니다. 이 모든 것은 JavaScript/HTML/CSS가 아니며 C#
... C# send a dataURL directly을 만들 수 있으며 디코딩, 이미지 자료 및 캔버스 부분은 건너 뛸 수 있습니다. 이미지의 src 속성을 dataURL에 할당하십시오.
감사합니다! 스프라이트 렌더러를 통해 선택되고 표시되는 임의의 PNG 파일이 있으며 코드를 통해 그려지지 않습니다. 수정해야 할 전화로 전달되는 HTML 파일로 나를 안내 할 수 있습니까? (우리는 HFT와 함께 제공되는 두 개의 버튼이있는 D 패드를 사용하고 있습니다.) –
사용 된 HTML 파일은 샘플에 따라 다릅니다. 문서에서 말한 것처럼 전화로 제공되는 모든 파일은 'Assets/WebPlayerTemplate/HappyFunTimes'에 있습니다. 어떤 파일이 컨트롤러에 사용되는지는 폴더에 상대적인'PlayerSpanwer' 또는'PlayerConnector'에서 설정됩니다. 그냥 무작위로 선택한 PNG를 사용하는 경우 해당 폴더 안의 PNG 파일 복사본을 넣은 다음 컨트롤러에 파일 이름을 보내고 img.src에서 해당 파일 이름을 가리 키십시오. – gman