NDC12에서 발표한 슬라이드입니다. 이 슬라이드에선 게임 잼을 비롯하여 짧은 시간 내에 즉흥적으로 결과를 만들어내는 여러 행사를 소개한 뒤, 실제로 그런 종류의 행사들을 주최하고 운영해 본 경험을 공유할 것입니다. 게임 잼에 게이미피케이션을 적용해본 사례도 함께 소개할 것입니다. 이러한 과정을 통해 잼의 기획 단계부터 준비과정, 실제 운영에 이르기까지의 모든 단계에서 얻어진 여러 시행착오와 노하우를 공유하고, 처음의 기획 의도와 실제 적용 결과를 비교 분석하는 포스트모템적 구성으로 진행될 예정입니다.
[NDC_16] 캐릭터 한 달에 하나씩 업데이트 하기 : '최강의 군단' 스킬 개발 툴 포스트 모템과 차기작 '건파이트 맨션' 툴 프리뷰승민 백
NDC 2016 발표 자료입니다
아래는 공개된 세션의 소개입니다
------------------------------------------------------------
게임을 개발하다 보면 액션, RPG를 비롯한 많은 장르에서 캐릭터의 스킬을 만들어야 하는 때가 옵니다.
다양한 스킬의 기획을 제한하지 않으면서도, 빠르게 개발한다는 두 가지 목표를 달성하기 위해서는 어떻게 개발해야 하는지 고민하고 프로젝트에 적용한 결과를 공유하는 세션입니다.
다음과 같은 세 가지 개발 방법을 보여드리고, 각각의 장단점을 비교하는 형태로 진행됩니다.
1. 고전적인 하드 코딩 방식
2. 한 달에 하나씩의 캐릭터 업데이트를 단행했던 <최강의>에서 사용했던 스킬 툴 방식 (온라인 액션RPG, 언리얼3 기반)
3. 현재 개발 중인 모바일 프로젝트 <건파이트>에서 시도하고 있는 언리얼4 블루프린트 기반 방식
NDC12에서 발표한 슬라이드입니다. 이 슬라이드에선 게임 잼을 비롯하여 짧은 시간 내에 즉흥적으로 결과를 만들어내는 여러 행사를 소개한 뒤, 실제로 그런 종류의 행사들을 주최하고 운영해 본 경험을 공유할 것입니다. 게임 잼에 게이미피케이션을 적용해본 사례도 함께 소개할 것입니다. 이러한 과정을 통해 잼의 기획 단계부터 준비과정, 실제 운영에 이르기까지의 모든 단계에서 얻어진 여러 시행착오와 노하우를 공유하고, 처음의 기획 의도와 실제 적용 결과를 비교 분석하는 포스트모템적 구성으로 진행될 예정입니다.
[NDC_16] 캐릭터 한 달에 하나씩 업데이트 하기 : '최강의 군단' 스킬 개발 툴 포스트 모템과 차기작 '건파이트 맨션' 툴 프리뷰승민 백
NDC 2016 발표 자료입니다
아래는 공개된 세션의 소개입니다
------------------------------------------------------------
게임을 개발하다 보면 액션, RPG를 비롯한 많은 장르에서 캐릭터의 스킬을 만들어야 하는 때가 옵니다.
다양한 스킬의 기획을 제한하지 않으면서도, 빠르게 개발한다는 두 가지 목표를 달성하기 위해서는 어떻게 개발해야 하는지 고민하고 프로젝트에 적용한 결과를 공유하는 세션입니다.
다음과 같은 세 가지 개발 방법을 보여드리고, 각각의 장단점을 비교하는 형태로 진행됩니다.
1. 고전적인 하드 코딩 방식
2. 한 달에 하나씩의 캐릭터 업데이트를 단행했던 <최강의>에서 사용했던 스킬 툴 방식 (온라인 액션RPG, 언리얼3 기반)
3. 현재 개발 중인 모바일 프로젝트 <건파이트>에서 시도하고 있는 언리얼4 블루프린트 기반 방식
저는 운 좋게도 게임 PD로서 지난 10년 동안 몇 개의 게임을 개발하고, 서비스하는 경험을 가질 수 있었습니다.
본 세션에서는 제가 그동안 개발했던 게임들을 간단히 돌아보고, 개발 과정에서 시행착오를 통해 배운 것들을 살펴보려고 합니다.
개인적인 경험이라 편향이 있을 수 있겠지만, 게임 PD나 디렉터 커리어를 목표로 하시는 분들께 참고가 될 수 있으면 좋겠습니다.
오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...Amazon Web Services Korea
서비스 런칭을 위해 라이온하트와 카카오게임즈가 어떻게 최적 성능의 인스턴스를 선택하고, Windows 운영 체제를 최적화하며, 왜 Amazon Aurora를 기본 데이터베이스로 채택하였는지를 설명합니다. 또한, 출시부터 운영까지의 과정에서 MMORPG가 어떻게 AWS 상에서 설계되고, 게임 서버 성능을 극대할 수 있었는지에 대해 전달해드립니다.
멀티플레이어 게임을 서비스하는 데 필요한 게임 장르별 백엔드 아키텍처에 대한 설명해 드립니다. 기본적인 게임의 상태 동기화 개념과 서버 구성에 관한 이야기, 게임 클라이언트 엔진(Unity, Lumberyard, Unreal Engine 등)에서 제공하는 복제 프레임워크를 통하여 손쉽게 게임 서버를 만드는 방법에 대한 내용을 다룹니다. 또한, 이렇게 만들어진 게임 서버를 Amazon GameLift라는 클라우드 서비스를 통해 DevOps형태의 비용 효율적으로 서비스하는 방법에 대해 소개합니다.
Game engines provide an abstraction layer that allows games to run across multiple platforms. A cross-platform game engine handles the complex and platform-specific implementation details, so that game developers can focus on gameplay instead of low-level code. DeadEngine is an example of a cross-platform engine that supports PC, iOS and Android using C++ and common interfaces. While engines like Unity make it easy to deploy games across many platforms, native implementations tend to be smaller and faster than games built with an engine. Therefore, developing a cross-platform engine requires implementing features separately for each platform.
저는 운 좋게도 게임 PD로서 지난 10년 동안 몇 개의 게임을 개발하고, 서비스하는 경험을 가질 수 있었습니다.
본 세션에서는 제가 그동안 개발했던 게임들을 간단히 돌아보고, 개발 과정에서 시행착오를 통해 배운 것들을 살펴보려고 합니다.
개인적인 경험이라 편향이 있을 수 있겠지만, 게임 PD나 디렉터 커리어를 목표로 하시는 분들께 참고가 될 수 있으면 좋겠습니다.
오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...Amazon Web Services Korea
서비스 런칭을 위해 라이온하트와 카카오게임즈가 어떻게 최적 성능의 인스턴스를 선택하고, Windows 운영 체제를 최적화하며, 왜 Amazon Aurora를 기본 데이터베이스로 채택하였는지를 설명합니다. 또한, 출시부터 운영까지의 과정에서 MMORPG가 어떻게 AWS 상에서 설계되고, 게임 서버 성능을 극대할 수 있었는지에 대해 전달해드립니다.
멀티플레이어 게임을 서비스하는 데 필요한 게임 장르별 백엔드 아키텍처에 대한 설명해 드립니다. 기본적인 게임의 상태 동기화 개념과 서버 구성에 관한 이야기, 게임 클라이언트 엔진(Unity, Lumberyard, Unreal Engine 등)에서 제공하는 복제 프레임워크를 통하여 손쉽게 게임 서버를 만드는 방법에 대한 내용을 다룹니다. 또한, 이렇게 만들어진 게임 서버를 Amazon GameLift라는 클라우드 서비스를 통해 DevOps형태의 비용 효율적으로 서비스하는 방법에 대해 소개합니다.
Game engines provide an abstraction layer that allows games to run across multiple platforms. A cross-platform game engine handles the complex and platform-specific implementation details, so that game developers can focus on gameplay instead of low-level code. DeadEngine is an example of a cross-platform engine that supports PC, iOS and Android using C++ and common interfaces. While engines like Unity make it easy to deploy games across many platforms, native implementations tend to be smaller and faster than games built with an engine. Therefore, developing a cross-platform engine requires implementing features separately for each platform.
Este documento fornece instruções em 5 etapas para elaborar um texto: 1) Pensar no assunto e ter claro o que se quer contar, 2) Planejar reunindo as ideias em um esquema, 3) Redigir o esquema em forma de texto, 4) Reler o texto, 5) Reler o texto para revisá-lo.
This document provides an overview of democracy, including definitions, types, principles, and historical events. It defines democracy as a form of government where power is held by citizens either directly or through elected representatives. Key principles are discussed, such as equality before the law, freedom of speech and assembly, and majority rule with minority rights protected. Different models of democracy are mentioned, like parliamentary and federal republic systems. The document also briefly outlines other forms of government like dictatorships, monarchies, and communist systems.
வெற்றி = பணம் என்று வாதத்திற்கு ஒப்புக் கொண்டால்
அந்த பணத்தை அடைய CASH என்பதிற்கு பதிலாக KASH என்பதை
நீங்கள் வளர்த்தல் வேண்டும்.
அது என்ன KASH ?
K = KNOWLEDGE = அறிவு
A = ATTITUDE = மனப்பான்மை
S = SKILL = திறமை
H = HABIT = பழக்கம்
இவை தான் உங்கள் வெற்றியை தீர்மானிக்கும் .
ஏன்? எதற்கு? எங்கே? எப்பொழுது?
ஏன்?
உங்கள் வியாபார வளர்சிக்கு தேவையான தொழில் வளக்கலை.
எதற்கு?
1.விற்பனை அதிகரிக்க.....
2.மார்க்கெட்டிங் துறை சார்ந்த அனைத்து பிரச்சனைகளுக்கும் சரியான வழிகாட்டுதல்.
3.புதிய தயாரிப்புகளை சந்தைபடுத்த தேவையான ட்ரைனிங் .......
4.உங்கள் தயாரிப்புகளுக்கு தனி ப்ரண்ட் அங்கிகாரம் பெற தேவையான ட்ரைனிங் ....
5.ஸ்டார்ட் அப் தொழில் அமைப்புகளுக்கு தங்கள் தயாரிப்புகள் மார்க்கெட்டிங் செய்ய தேவையான அனைத்து மார்க்கெட்டிங் ட்ரைனிங் நாங்கள் உங்களுக்கு தருகிறோம்.
மனிதவளத்துறை சார்ந்த வழிகாட்டுதல்.
செயல் திறன் மேம்பாடு ஒன்று மட்டுமே உங்கள் தொழில் வெற்றிக்கு வழிவகுக்கும்.
1. நீங்கள் யார் உங்களுக்குள் இருக்கும் பிரச்சனைகளுக்கு சரியானவழிகாட்டுதல்.
2.உங்கள் முடிவு எடுக்கும் முறை ஒழுங்குபடுத்த
3.உங்கள் தாழ்வு மனப்பான்மை மாற
4.உங்கள் வியாபார வெற்றிக்கு தேவையான அனைத்து ட்ரைனிங் எங்களிடம் உள்ளது.
எங்கே?
உங்களுக்கா உங்களிடத்தில்.
எப்பொழுது?
உங்கள் வெற்றிக்கான நாளை நீங்களே தீர்மானியுங்கள்.
நாளைய அறிவு இன்றய வெற்றி.
அணுகவும்
கௌசிகா கன்சல்டண்சி ர.ராஜாராம் - 9865118262
kowshikaa2009@gmail.com
This document is a comic depicting various faces and expressions of Donald Trump alongside captions representing things he has said or positions he has taken. The comic uses exaggeration and absurdity to satirize Trump through nearly 30 panels showing different exaggerated or confused facial expressions paired with controversial or confusing quotes and topics related to Trump's campaign and presidency.
This document discusses the visions of success of three protagonists from popular films - Rancho from 3 Idiots, Bhuvan from Lagaan, and Iqbal from the film of the same name. It describes Rancho's vision as achieving excellence rather than just success, which leads him to become a scientist. Bhuvan's vision is about empowering his villagers, which allows them to defeat the British in a cricket match and be freed from taxes. Iqbal's vision involves gaining self-confidence and skills to play cricket, which earns him a place on the Indian national team.
Haiku Deck is a presentation platform that allows users to create Haiku-style slideshows. The document encourages the reader to get inspired and create their own Haiku Deck presentation, which can be shared on SlideShare. It provides a call to action for readers to get started making a Haiku Deck presentation.
வெற்றி = பணம் என்று வாதத்திற்கு ஒப்புக் கொண்டால்
அந்த பணத்தை அடைய CASH என்பதிற்கு பதிலாக KASH என்பதை
நீங்கள் வளர்த்தல் வேண்டும்.
அது என்ன KASH ?
K = KNOWLEDGE = அறிவு
A = ATTITUDE = மனப்பான்மை
S = SKILL = திறமை
H = HABIT = பழக்கம்
இவை தான் உங்கள் வெற்றியை தீர்மானிக்கும் .
ஏன்? எதற்கு? எங்கே? எப்பொழுது?
ஏன்?
உங்கள் வியாபார வளர்சிக்கு தேவையான தொழில் வளக்கலை.
எதற்கு?
1.விற்பனை அதிகரிக்க.....
2.மார்க்கெட்டிங் துறை சார்ந்த அனைத்து பிரச்சனைகளுக்கும் சரியான வழிகாட்டுதல்.
3.புதிய தயாரிப்புகளை சந்தைபடுத்த தேவையான ட்ரைனிங் .......
4.உங்கள் தயாரிப்புகளுக்கு தனி ப்ரண்ட் அங்கிகாரம் பெற தேவையான ட்ரைனிங் ....
5.ஸ்டார்ட் அப் தொழில் அமைப்புகளுக்கு தங்கள் தயாரிப்புகள் மார்க்கெட்டிங் செய்ய தேவையான அனைத்து மார்க்கெட்டிங் ட்ரைனிங் நாங்கள் உங்களுக்கு தருகிறோம்.
மனிதவளத்துறை சார்ந்த வழிகாட்டுதல்.
செயல் திறன் மேம்பாடு ஒன்று மட்டுமே உங்கள் தொழில் வெற்றிக்கு வழிவகுக்கும்.
1. நீங்கள் யார் உங்களுக்குள் இருக்கும் பிரச்சனைகளுக்கு சரியானவழிகாட்டுதல்.
2.உங்கள் முடிவு எடுக்கும் முறை ஒழுங்குபடுத்த
3.உங்கள் தாழ்வு மனப்பான்மை மாற
4.உங்கள் வியாபார வெற்றிக்கு தேவையான அனைத்து ட்ரைனிங் எங்களிடம் உள்ளது.
எங்கே?
உங்களுக்கா உங்களிடத்தில்.
எப்பொழுது?
உங்கள் வெற்றிக்கான நாளை நீங்களே தீர்மானியுங்கள்.
நாளைய அறிவு இன்றய வெற்றி.
அணுகவும்
கௌசிகா கன்சல்டண்சி ர.ராஜாராம் - 9865118262
kowshikaa2009@gmail.com
Be social - Le logiche dei social networkfscrigner
Presentazione aziendale effettuata il 2 dicembre 2016 agli studenti del corso di Laurea in Relazioni Pubbliche a Gorizia. Contenuto: nozioni teoriche sui social media e case histories correlate.
This document is a slideshow presentation featuring behind-the-scenes photographs from famous films spanning 1940-1970. It includes images of actors and directors such as Marilyn Monroe, Cary Grant, John Wayne, Alfred Hitchcock, Marlon Brando, Charlton Heston, Rita Hayworth, Orson Welles, and more in casual or unguarded moments on film sets and during production of well-known movies like "Misfits", "Ben Hur", "Rio Bravo", and "Young Frankenstein". The slideshow offers a glimpse behind the scenes of Hollywood's Golden Age.
Chapter 2. 업무 자동화를 위한 컴퓨터 세팅 | 6개월 치 업무를 하루 만에 끝내는 업무자동화 |...Byunghyun Ban
* SlideShare 오류로 빈 화면이 나올 경우 다운로드하여 이용해주시기 바랍니다.
<6개월 치 업무를 하루 만에 끝내는 업무 자동화, 2020, 생능출판사>의 수업용 PPT 자료입니다. 교재로 활용하실 경우 출판사를 통해 한 학기 분량의 PPT를 제공받으실 수 있습니다.
Visual Studio의 디버깅 도구들을 소개합니다. 이 자료는 https://www.slideshare.net/LusainKim/ss-54856264 에서 Visual Studio의 기능에 초점을 맞추어 작성되었습니다.
이 문서는 Visual Studio 2017 Community 버전을 기준으로 설명되어 있습니다.
기타 질문사항은 sain9212@gmail.com 으로 부탁드리겠습니다.
9. 언리얼 엔진 4용 Coherent GT 플러그인
기존 프로젝트에 Coherent GT 추가
샘플 게임
프로젝트 파일 생성
GTPlayer (특정 페이지를 빠르게 볼 수 있는 단
독 프로그램)
데모 버전 기준으로 비주얼 C++ 2015 런타임
이 필요하며, 다음 링크에서 받을 수 있다.
https://www.microsoft.com/ko-
KR/download/details.aspx?id=48145
10. 플러그인을 설치할 언리얼을 선
택하는 화면이다. 현재 환경에서
는 직접 소스파일을 받아서 사용
하고 있기 때문에, 아래의 Source
build at : (경로) 중에서 테스트를
원하는 엔진 경로를 선택하면 된
다.
14. 다운로드 받은 예제 프로젝트를 실행하여
테스트 플레이를 해볼 수 있다. 처음부터 시
작하기 원한다면 아래의 내용을 따라해보
도록 하자.
15. 우선 UI로 출력할 HTML 파일을 준비한다.
이 파일을 프로젝트 내부에 넣는다. 예제 프
로젝트 기준에서 기본으로 출력되는 파일
의 위치는 (프로젝트 폴
더)ContentuiresourcessosMainUI.html 이
다.
언리얼 에디터에서 플러그인 형식으로 인
식이 되고 있어야 한다.
16.
17.
18. 테스트한 환경에서는 엔진에 직접 넣었기 때
문에 Built-In 내부에 출력되며, 프로젝트에 플
러그인 형식으로 설치된 경우 약간 위치가 다
를 수 있다.
User Interface 항목에서 Coherent GT가 보이는
지, Enabled 항목이 활성화되었는지 확인한다.
해당 항목이 없다면 엔진을 다시 빌드 해본 뒤
에 재확인해보도록 하자.
Enabled가 체크되어 있지 않다면 체크 후에 에
디터를 재 시작하도록 하자.
19.
20. 페이지를 출력하는 방법은 두 가지 방법이
있다. 블루 프린트를 이용한 방법과 C++에
서 직접 페이지를 로드 해서 출력한다.
21. 출력하기 원하는 페이지를 html 파일로 작성한다.
포토샵에서 html 출력을 지원하므로 만약 포토샵이
있다면 편하게 결과물을 만들 수 있다.
새로운 맵을 생성한 뒤에, 새로운 게임모드 블루프
린트를 생성한다.
게임모드 블루프린트에서 HUD 항목으로 사용할
블루프린트를 생성한다. 이 블루프린트는
CoherentUIGTGameHUD.h를 상속받도록 한다.
이 예제에서는 레벨 블루프린트에서 모든 작업을
진행할 것이므로 새로 만든 맵의 레벨 블루프린트
를 열도록 하자. 그 뒤에 아래 그림을 참고하여 블루
프린트를 생성하도록 하자. (자세히 보려면 문서를
확대하거나 외부 이미지를 참고하자)
22. 위 블루프린트에서 수정할 부분은 Setup
UIGTView 항목의 Page URL이다. 작성한
HTML 파일의 경로를 설정 하도록 하자.
23.
24. CoherentUIGTGameHUD 클래스를 상속받
은 클래스를 생성한 뒤에 생성자에서 다음
구문을 사용한다.
출력할 HTML의 경로에 맞게 주소를 작성
해주면 된다. 이후 에디터에서 게임 모드의
HUD Class를 방금 만든 클래스로 설정하도
록 하자.
SetupUIGTView("coui://UIResources/hud.html", true, 0, 0);
25. 이때 TestCoHUD와 CoherentUIGTGameHUD의 관계는 다음과 같다.
TestCoHUD
CoherentUIGTGameHUD
27. Coherent HUD 자체는 포커스를 가지고 있
지 않다. Coherent UI로의 입력은
SCoherentUIGTInputForward 라는 빈 화면
을 가진 위젯을 통해서 이루어진다. 위젯을
직접 생성해도 되고,
ACoherentUIGTInputActor가 이 위젯을 가
지고 있으므로 이 액터를 생성해도 된다. 액
터를 사용하려고 할 때에는 Initialize 함수를
호출하여야만 위젯이 생성되므로 참고하자.
29. if (GEngine->IsValidLowLevel())
{
AActor* inputActor = GetWorld()->SpawnActor(ACoherentUIGTInputActor::StaticClass());
ACoherentUIGTInputActor* coInputActor = Cast<ACoherentUIGTInputActor>(inputActor);
coInputActor->Initialize();
}
Initialize()를 수행하지 않으면 위젯이 생성되지 않아 UI 입력이 되지 않는다.
30. TSharedPtr<class SCoherentUIGTInputForward> CoherentUIGTInputForwardWidget
= SNew(SCoherentUIGTInputForward).Owner(this);
if (GEngine->IsValidLowLevel())
{
GEngine->GameViewport->AddViewportWidgetContent(
SNew(SWeakWidget).PossiblyNullContent(
CoherentUIGTInputForwardWidget.ToSharedRef()));
}
if (CoherentUIGTInputForwardWidget.IsValid())
{
CoherentUIGTInputForwardWidget->SetVisibility(EVisibility::Visible);
}
31. 이후 위젯에 포커스를 입력하고 싶을 때에
는 이 함수를 사용한다.
FSlateApplication::Get().SetKeyboardFocus(CoherentUIGTInputForwardWidget);
포커스를 게임으로 되돌리려면 다음 함수를
사용한다.
FSlateApplication::Get().SetFocusToGameViewport();
32. 자바 스크립트 설정
UE4 -> JS로 함수를 호출하기 위해서는 JS에서 다
음과 같이 스크립트 설정을 해주어야 한다.
HUD로 사용할 html 파일에는 coherent.js가 포함되
어야만 한다. 해당 자바스크립트는 Coherent UI의
코어 파일로, Coherent UI의 주요 기능을 사용하기
위해서는 필수적으로 포함되어 있어야 한다.
또한 스크립트 영역에서는 아래와 같은 구문이 꼭
들어가 있어야 한다.
34. Trigger Javascript Event 노드를 사용하여 JS의 함수를 호출할 수 있다.
다음 예시는 특정 키(스페이스)를 입력했을 때 HUD로 자바스크립트
함수를 호출하는 블루프린트 예제이다.
<Trigger JavaScript Event 노드를 사용해 CallOnUnrealJS함수를 호출한다. 파라메터로 Unreal Engine 4를 전달>
35. 이때 JS파일에서 호출될 CallOnUnrealJS함수가 준비 되어 있어야 하는데
이것은 다음과 같다.
engine.on(‘CallOnUnrealJS’, CallOnUnreal);
첫 번째 인자인 ‘CallOnUnrealJs’는 언리얼에서 함수를 호출할 때 사용할
문자열이며, 두 번째 인자인 CallOnUnreal은 실제 사용할 JS 함수명이다.
위와 같이 설정한 뒤에 언리얼에서 CallOnUnrealJS로 함수를 호출하면 자
바스크립트의 CallOnUnreal 함수가 실행된다.
36. View->TriggerEvent("CallOnUnrealJS", "Unreal Engine 4");
TriggerEvent의 첫 번째 인자는 JS에서 호출될 함수의 이름이며 두 번째는 전
달될 값이다. 이때 View 객체는 CoherentUIGTHUD 클래스에서 얻어야 하며,
다음과 같은 함수를 사용하여 얻을 수 있다.
<예제의 HUD는 CoherentUIGTHUD 클래스를 상속받은 클래스 객체 HUD이다>
37. 초기화를 수행한 뒤에 몇몇 이벤트를 바인딩 해주어야 한다. 제공되는 기본
예제 기준으로 바인딩이 필요한 이벤트는 두 가지로, 각각 ReadyForBindings,
JavaScriptEvent이다. 아래는 블루프린트 예제 화면이다.
39. 이벤트 바인딩을 할 때 타켓은 형변환된
CoherentUIGTGameHUD를 곧바로 쓰는 것이 아니라, Get
CoherentUIGTHUD 노드를 사용하여 그 결과 값을 사용해
야 한다.
자바스크립트에서 이벤트를 호출하면 JavaScriptEvent와
바인딩한 이벤트 (예제 화면에서는 JavaScriptEvent_이벤
트_0 노드에 해당된다) 가 실행된다. 이벤트명이 문자열로
넘어오므로 문자열을 확인한 뒤에 그에 맞는 수행을 설정
해주어야 한다.
노트 : 즉, 특정 함수명를 호출하는 것이 아니라 오직 하나
의 함수가 호출되며 전달된 값으로 분기하여 함수를 호출
하는 형태.
40. C++에서 호출될 함수 GetEventFromJS를 등록해 주고 JS에서 ToUnreal이라는 함수를 호출하면 GetEventFromJS가 호
출된다. 예를 들어 ToUnreal이라는 함수가 JS에 있고 내부에서 C++함수를 호출하고 싶다면 engine.call(“함수명”)과
같이 호출하여 C++함수를 호출할 수 있다. 앞서 GetEventFromJS를 ToUnreal과 바인드 해주었는데
engine.call(“ToUnreal”);을 호출하면 GetEventFromJS가 호출된다.
42. 메뉴의 Cohernet GT - Launch Editor 항목을
선택하면 실행된다
기본적인 배치를 할 수 있다.
몇몇 이벤트를 넣을 수는 있으나, 애
니메이션을 작성하기에는 조금 부족
하다
43. 메뉴의 Cohernet GT - Launch Inspector 항목
을 선택하면 실행된다. 이 항목은 PIE로 테
스트플레이 중일 때에만 활성화된다.
크로미엄 (구글 크롬의 오픈소스 버전)의
디버깅 툴과 거의 흡사하다
각 요소의 위치 등을 확인하거나 자바스크
립트 디버깅을 할 때 등에 활용할 수 있다.
로딩 속도는 좀 많이 느리다
44. 메뉴의 Cohernet GT - Launch Performance
Auditor 항목을 선택하면 실행된다. 이 항목
은 PIE로 테스트플레이 중일 때에만 활성화
된다.
현재 사용중인 html 페이지에서 성능상으
로 문제가 될 수 있는 부분을 체크해서 대화
상자로 보여준다.
45. 프로젝트 작업 없이 페이지만 미리 보고 싶을 때 사용할 수 있다
모든 옵션을 옵션으로 넣어야 하며, 이 때문에 바로가기 옵션으로 설정하거나 커맨드창에서 실행할 필요가 있다
현재 데모 기준으로 VS 2015 C++ 패키지가 필요하다
46. 애니메이션 제작
HTML5에서는 자바스크립트 혹은 CSS를 사용해서 애니메이션을 만들 수 있다. 현재
Coherent에서는 자바스크립트를 활용한 애니메이션을 지원한다.
HTML5 애니메이션 제작 툴은 어도비 엣지, 어도비 플래시가 있다. 엣지는 지원중단이 예
정되어 있고, 차후 플래시에 기능이 집중될 것이라고 한다.
차후 버전(Coherent UI 2.4)에서 자체 UI 애니메이션 프레임워크를 지원할 예정이라고 한
다.
화면 비율 문제
Coherent에서는 출력만 담당할 뿐, 자동적으로 화면에 따른 리사이징 처리 등을 하지는
않는다
화면 크기에 따른 유동적인 UI 변경을 위해서는 스타일 작성을 신경쓰거나 리사이징할
때마다 사용할 자바스크립트를 작성해두어야 한다
비동기 모드 (Async Mode)
동기 모드에서 생길 수 있는 성능상의 문제를 해결하기 위해서 비동기 모드를 사용할 수
도 있다.
비동기 모드를 사용 시에는 몇가지 추가 설정이 필요하다.
자세한 내용은 공식 홈페이지의 매뉴얼을 참고하자 (영문)
https://www.coherent-labs.com/Documentation/UnrealEngine4-
GT/d2/df6/_coherent__g_t_for__unreal__engine_4_plugin.html#Async_mode