{"id":132,"date":"2019-10-03T12:38:17","date_gmt":"2019-10-03T09:38:17","guid":{"rendered":"https:\/\/blog.hamk.fi\/ge\/?p=132"},"modified":"2019-10-14T09:55:22","modified_gmt":"2019-10-14T06:55:22","slug":"ohjelmointi-pelimoottoreilla","status":"publish","type":"post","link":"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/","title":{"rendered":"Ohjelmointi pelimoottoreilla"},"content":{"rendered":"<p>Olen ty\u00f6skennellyt HAMK Smart -tutkimusyksik\u00f6ss\u00e4 noin 2 vuotta, jonka aikana olen ollut osallisena kolmessa projektissa, joista kussakin kehitettiin mobiilisovellus. Ensimm\u00e4inen oli Calmfulness, jonka aikana p\u00e4\u00e4sin tutustumaan Java-ohjelmointikieleen ja Android Studioon, ohjelmointiymp\u00e4rist\u00f6, joka on suunniteltu Android sovellusten luomiseen. Seuraava projektini oli\u00a0 <a href=\"https:\/\/www.hamk.fi\/projektit\/digitrail\/\">DigiTrail<\/a>. T\u00e4ss\u00e4 projektissa hy\u00f6dynnettiin Xamarin.Android kirjastoa, joka mahdollistaa Android sovellusten ohjelmointi C# (c sharp) -ohjelmointikielen avulla. Kolmas projekteistani oli\u00a0 H\u00e4meenlinna taskussa, joka puolestaan kehitettiin hy\u00f6dynt\u00e4m\u00e4ll\u00e4 React Native kehyst\u00e4 ja Java Script -ohjelmointikielt\u00e4. Olin opiskeluaikoinani opetellut <a href=\"https:\/\/unity.com\/\">Unity<\/a>-pelimoottorin k\u00e4ytt\u00f6\u00e4, mutta en ollut koskaan tutustunut <a href=\"https:\/\/www.unrealengine.com\/en-US\/feed\">Unreal Engine 4<\/a>-pelimoottoriin.<\/p>\n<p>Suoritin ensimm\u00e4isen ty\u00f6teht\u00e4v\u00e4ni <a href=\"https:\/\/blog.hamk.fi\/ge\/vattu\/\">VATTU -hankkeessa<\/a> k\u00e4ytt\u00e4en Unreal Engine 4, joka oli mainio tilaisuus p\u00e4\u00e4st\u00e4 opettelemaan miten Unreal Engine 4 ja sen visuaalinen blueprint-ohjelmointi soveltuvat kehitysty\u00f6h\u00f6n. Unityll\u00e4 ja aikaisemmin mainitsemani ty\u00f6kalut ovat melkosamanlaisia. Ohjelmointikieli ja kielen syntaksi saattaa erota, mutta kaikkia yhdist\u00e4\u00e4 kuitenkin yksi piirre. Kaikissa ohjelmakoodi kirjoitetaan toisin kuin Unreal Engine 4:n blueprint-ohjelmoinnissa. T\u00e4ss\u00e4 tekstiss\u00e4 keskitynkin Unityn ja Unreal Engine 4:n eroavaisuuksiin ohjelmoitaessa. Paras tapa huomata n\u00e4m\u00e4 eroavaisuudet on ohjelmoida jotain, kuten vaikka Hello World.<\/p>\n<h2>Hello World<\/h2>\n<p>Yksi yksinkertaisimmista ohjelmista, jonka voi tehd\u00e4 on Hello World, jossa heti ohjelman k\u00e4ynnistyess\u00e4 ohjelma tulostaa tekstin \u201dHello World!\u201d. Uutta ohjelmointi kielt\u00e4 opetellessa t\u00e4m\u00e4 on yleens\u00e4 ensimm\u00e4inen asia, joka tulee esimerkeiss\u00e4 vastaan.<\/p>\n<h3>Hello Unity<\/h3>\n<p>Unityss\u00e4 ohjelmoidaan kirjoittamalla C# \u2011skriptej\u00e4. N\u00e4m\u00e4 skriptit liitet\u00e4\u00e4n pelimaailman objekteihin, joka aktivoi skriptin. Hello World voidaan suorittaa Unityss\u00e4 seuraavasti: Unity editorissa luodaan pelimaailmaan uusi objekti, jolle asetetaan skripti nimelt\u00e4 HelloWorld. Kuvassa 1 Hello World skripti on avattuna Visual Studio 2019 ohjelmassa, mutta mik\u00e4 tahansa tekstinmuokkausohjelma pit\u00e4isi k\u00e4yd\u00e4. Start nimisen funktion sis\u00e4lle lis\u00e4t\u00e4\u00e4n rivi <code>print(\"Hello World!\");<\/code>.<\/p>\n<figure id=\"attachment_133\" aria-describedby=\"caption-attachment-133\" style=\"width: 566px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-133 size-full\" src=\"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/09\/helloWorldUnity.png\" alt=\"HelloWorld ohjelmointi Unity-pelimoottorilla\" width=\"566\" height=\"343\" srcset=\"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/09\/helloWorldUnity.png 566w, https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/09\/helloWorldUnity-300x182.png 300w\" sizes=\"auto, (max-width: 566px) 100vw, 566px\" \/><figcaption id=\"caption-attachment-133\" class=\"wp-caption-text\">Kuva 1 HelloWorld skripti<\/figcaption><\/figure>\n<p>Start funktiota kutsuttaessa suoritetaan Start -funktio sis\u00e4lt\u00e4m\u00e4t komennot. T\u00e4m\u00e4 kutsu tapahtuu heti ohjelman latauduttua. Seuraksena Unity editorin konsoliin tulostuu teksti &#8220;Hello World!&#8221;.<\/p>\n<h3>Hello Unreal Engine 4<\/h3>\n<p>Blueprintti koostuu valmiista osista, joita yhdistelem\u00e4ll\u00e4 saadaan lopputuloksena toimiva logiikka. Hello World voidaan tehd\u00e4 avaamalla projektin level blueprint. T\u00e4m\u00e4 blueprint tulee kunkin ohjelman tason mukana automaattisesti. Level blueprintti\u00e4 ei tarvitse liitt\u00e4\u00e4 objektiin kuten Unityss\u00e4. Mainittakoon, ett\u00e4 jotkut blueprintit liitet\u00e4\u00e4n suoraan objekteihin. Kuvassa 2 level blueprint on avattuna ja <code>Event BeginPlay<\/code> tapahtumasta on vedetty suorituslinjaa (valkoinen viiva) <code>Print String<\/code> funktioon, jonka <code>In String<\/code> parametrin arvoksi on annettu teksti &#8220;Hello World!&#8221;.<\/p>\n<figure id=\"attachment_136\" aria-describedby=\"caption-attachment-136\" style=\"width: 567px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-136 size-full\" src=\"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/09\/helloWorldUE.png\" alt=\"HelloWorld ohjelmointi Unreal Engine 4 -pelimoottorilla\" width=\"567\" height=\"310\" srcset=\"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/09\/helloWorldUE.png 567w, https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/09\/helloWorldUE-300x164.png 300w\" sizes=\"auto, (max-width: 567px) 100vw, 567px\" \/><figcaption id=\"caption-attachment-136\" class=\"wp-caption-text\">Kuva 2 Level blueprint<\/figcaption><\/figure>\n<p>BeginPlay tapahtumaa kutsutaan ohjelman latauduttua. Kutsusta ohjelma l\u00e4htee suorittamaan toimintoja j\u00e4rjestyksess\u00e4 seuraten suorituslinjaa, jolloin ohjelma tulostaa Unreal Engine 4 editorin konsolille viestin &#8220;Hello World!&#8221;.<\/p>\n<h3>Loppusanat<\/h3>\n<p>T\u00e4ss\u00e4 tekstiss\u00e4 k\u00e4ytiin l\u00e4pi lyhyesti ja yksinkertaisesti kahden VATTU -hankkeessa k\u00e4ytett\u00e4vien pelimoottorien eroja kehitysty\u00f6ss\u00e4. Unityn C# -skriptit mahdollistavat kehitt\u00e4j\u00e4n luoda juuri sellaisia skriptej\u00e4 kuin kehitt\u00e4j\u00e4 tarvitsee. Skriptien luominen vaatii kuitenkin C# -ohjelmointikielen osaamista. Unreal Engine 4:n blueprint puolestaan ei tarvitse mink\u00e4\u00e4n ohjelmointikielen opettelua. Lis\u00e4ksi visuaalisuus voi auttaa logiikan hahmottamisessa. Kehitt\u00e4j\u00e4n t\u00e4ytyy rakentaa logiikka k\u00e4ytt\u00e4en valmiita palasia, joka saattaa vaikeuttaa kehityst\u00e4.<\/p>\n<div class=\"sc-toggle\"><div class=\"sc-toggle-title active\"><a href=\"#\">About the Author<\/a><\/div><div class=\"sc-toggle-content active\">\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-174 size-medium\" src=\"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/10\/toni_lavonen-e1570094131961-200x300.jpg\" alt=\"About author image | Toni Lavonen\" width=\"200\" height=\"300\" \/><\/p>\n<p>Toni Lavonen, sovelluskehitt\u00e4j\u00e4, HAMK Smart-tutkimusyksikk\u00f6<\/p>\n<\/div><\/div>\n\n<h3>VATTU &#8211; Valmistavan teollisuuden virtuaaliset tuotteet<\/h3>\n<p><a href=\"https:\/\/www.hamk.fi\/projektit\/vattu\/\">Hankkeen<\/a> tavoitteena on tutkimuksen, selvitysten ja kokeiluiden avulla tuottaa ja jalkauttaa uutta tietoa yritysten hy\u00f6dynnett\u00e4v\u00e4ksi koskien yritysten mahdollisuuksia hy\u00f6dynt\u00e4\u00e4 pelimoottoriteknologiaa tuotannossaan ja toiminnassaan. Hankkeen kesto on 1.6.2019 \u2013 31.12.2020. Toiminta-ala on Kanta-H\u00e4me, Valkeakoski ja Hyvink\u00e4\u00e4.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-264 size-full\" src=\"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/10\/hankelogot.jpg\" alt=\"\" width=\"706\" height=\"109\" srcset=\"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/10\/hankelogot.jpg 706w, https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/10\/hankelogot-300x46.jpg 300w\" sizes=\"auto, (max-width: 706px) 100vw, 706px\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Olen ty\u00f6skennellyt HAMK Smart -tutkimusyksik\u00f6ss\u00e4 noin 2 vuotta, jonka aikana olen ollut osallisena kolmessa projektissa, joista kussakin kehitettiin mobiilisovellus. Ensimm\u00e4inen oli Calmfulness, jonka aikana p\u00e4\u00e4sin tutustumaan Java-ohjelmointikieleen ja Android Studioon, ohjelmointiymp\u00e4rist\u00f6, joka on suunniteltu Android sovellusten luomiseen. Seuraava projektini oli\u00a0 DigiTrail. T\u00e4ss\u00e4 projektissa hy\u00f6dynnettiin Xamarin.Android kirjastoa, joka mahdollistaa Android sovellusten ohjelmointi C# (c sharp) -ohjelmointikielen<span class=\"read-more\"><a href=\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/\" title=\"Read More\">More<\/a><\/span><\/p>\n","protected":false},"author":618,"featured_media":262,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[9,8,3,1],"tags":[17,14,18,16,15],"class_list":{"0":"post-132","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-unity","8":"category-unreal","9":"category-vattu","10":"category-yleinen","11":"tag-disp","12":"tag-gameengine","13":"tag-hamk-smart","14":"tag-unity","15":"tag-unreal-engine"},"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Ohjelmointi pelimoottoreilla - gamEngine lab<\/title>\n<meta name=\"description\" content=\"T\u00e4m\u00e4 blogi k\u00e4sittelee lyhyesti ja yksinkertaisesti, miten ohjelmointi Unity- ja Unreal Engine 4 -pelimoottoreilla eroavat toisistaan.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ohjelmointi pelimoottoreilla - gamEngine lab\" \/>\n<meta property=\"og:description\" content=\"T\u00e4m\u00e4 blogi k\u00e4sittelee lyhyesti ja yksinkertaisesti, miten ohjelmointi Unity- ja Unreal Engine 4 -pelimoottoreilla eroavat toisistaan.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/\" \/>\n<meta property=\"og:site_name\" content=\"gamEngine lab\" \/>\n<meta property=\"article:published_time\" content=\"2019-10-03T09:38:17+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-10-14T06:55:22+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/10\/ohjelmointi_pelimoottoreilla.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"740\" \/>\n\t<meta property=\"og:image:height\" content=\"260\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Toni Lavonen\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Toni Lavonen\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/\"},\"author\":{\"name\":\"Toni Lavonen\",\"@id\":\"https:\/\/blog.hamk.fi\/ge\/#\/schema\/person\/aa81742ada2b0ca0527eeb4cadbc8862\"},\"headline\":\"Ohjelmointi pelimoottoreilla\",\"datePublished\":\"2019-10-03T09:38:17+00:00\",\"dateModified\":\"2019-10-14T06:55:22+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/\"},\"wordCount\":553,\"commentCount\":1,\"image\":{\"@id\":\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/10\/ohjelmointi_pelimoottoreilla.jpg\",\"keywords\":[\"DISP\",\"gameengine\",\"HAMK Smart\",\"unity\",\"unreal engine\"],\"articleSection\":[\"Unity\",\"Unreal\",\"VATTU\",\"Yleinen\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/\",\"url\":\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/\",\"name\":\"Ohjelmointi pelimoottoreilla - gamEngine lab\",\"isPartOf\":{\"@id\":\"https:\/\/blog.hamk.fi\/ge\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/10\/ohjelmointi_pelimoottoreilla.jpg\",\"datePublished\":\"2019-10-03T09:38:17+00:00\",\"dateModified\":\"2019-10-14T06:55:22+00:00\",\"author\":{\"@id\":\"https:\/\/blog.hamk.fi\/ge\/#\/schema\/person\/aa81742ada2b0ca0527eeb4cadbc8862\"},\"description\":\"T\u00e4m\u00e4 blogi k\u00e4sittelee lyhyesti ja yksinkertaisesti, miten ohjelmointi Unity- ja Unreal Engine 4 -pelimoottoreilla eroavat toisistaan.\",\"breadcrumb\":{\"@id\":\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#primaryimage\",\"url\":\"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/10\/ohjelmointi_pelimoottoreilla.jpg\",\"contentUrl\":\"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/10\/ohjelmointi_pelimoottoreilla.jpg\",\"width\":740,\"height\":260,\"caption\":\"Ohjelmointi pelimoottoreilla\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/blog.hamk.fi\/ge\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ohjelmointi pelimoottoreilla\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.hamk.fi\/ge\/#website\",\"url\":\"https:\/\/blog.hamk.fi\/ge\/\",\"name\":\"gamEngine lab\",\"description\":\"This blog is about beneficial use of gameengines and related technologies like virtual reality and research, projects &amp; results done in HAMK Smart related to these subjects.\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.hamk.fi\/ge\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.hamk.fi\/ge\/#\/schema\/person\/aa81742ada2b0ca0527eeb4cadbc8862\",\"name\":\"Toni Lavonen\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/blog.hamk.fi\/ge\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0b1190b4e6c815ecd4200ce90ee994cd13bb15caa08117bcd6fd0b48709291a6?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0b1190b4e6c815ecd4200ce90ee994cd13bb15caa08117bcd6fd0b48709291a6?s=96&d=mm&r=g\",\"caption\":\"Toni Lavonen\"},\"url\":\"https:\/\/blog.hamk.fi\/ge\/author\/toni2\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Ohjelmointi pelimoottoreilla - gamEngine lab","description":"T\u00e4m\u00e4 blogi k\u00e4sittelee lyhyesti ja yksinkertaisesti, miten ohjelmointi Unity- ja Unreal Engine 4 -pelimoottoreilla eroavat toisistaan.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/","og_locale":"en_US","og_type":"article","og_title":"Ohjelmointi pelimoottoreilla - gamEngine lab","og_description":"T\u00e4m\u00e4 blogi k\u00e4sittelee lyhyesti ja yksinkertaisesti, miten ohjelmointi Unity- ja Unreal Engine 4 -pelimoottoreilla eroavat toisistaan.","og_url":"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/","og_site_name":"gamEngine lab","article_published_time":"2019-10-03T09:38:17+00:00","article_modified_time":"2019-10-14T06:55:22+00:00","og_image":[{"width":740,"height":260,"url":"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/10\/ohjelmointi_pelimoottoreilla.jpg","type":"image\/jpeg"}],"author":"Toni Lavonen","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Toni Lavonen","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#article","isPartOf":{"@id":"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/"},"author":{"name":"Toni Lavonen","@id":"https:\/\/blog.hamk.fi\/ge\/#\/schema\/person\/aa81742ada2b0ca0527eeb4cadbc8862"},"headline":"Ohjelmointi pelimoottoreilla","datePublished":"2019-10-03T09:38:17+00:00","dateModified":"2019-10-14T06:55:22+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/"},"wordCount":553,"commentCount":1,"image":{"@id":"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/10\/ohjelmointi_pelimoottoreilla.jpg","keywords":["DISP","gameengine","HAMK Smart","unity","unreal engine"],"articleSection":["Unity","Unreal","VATTU","Yleinen"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/","url":"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/","name":"Ohjelmointi pelimoottoreilla - gamEngine lab","isPartOf":{"@id":"https:\/\/blog.hamk.fi\/ge\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#primaryimage"},"image":{"@id":"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/10\/ohjelmointi_pelimoottoreilla.jpg","datePublished":"2019-10-03T09:38:17+00:00","dateModified":"2019-10-14T06:55:22+00:00","author":{"@id":"https:\/\/blog.hamk.fi\/ge\/#\/schema\/person\/aa81742ada2b0ca0527eeb4cadbc8862"},"description":"T\u00e4m\u00e4 blogi k\u00e4sittelee lyhyesti ja yksinkertaisesti, miten ohjelmointi Unity- ja Unreal Engine 4 -pelimoottoreilla eroavat toisistaan.","breadcrumb":{"@id":"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#primaryimage","url":"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/10\/ohjelmointi_pelimoottoreilla.jpg","contentUrl":"https:\/\/blog.hamk.fi\/ge\/wp-content\/uploads\/sites\/89\/2019\/10\/ohjelmointi_pelimoottoreilla.jpg","width":740,"height":260,"caption":"Ohjelmointi pelimoottoreilla"},{"@type":"BreadcrumbList","@id":"https:\/\/blog.hamk.fi\/ge\/ohjelmointi-pelimoottoreilla\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.hamk.fi\/ge\/"},{"@type":"ListItem","position":2,"name":"Ohjelmointi pelimoottoreilla"}]},{"@type":"WebSite","@id":"https:\/\/blog.hamk.fi\/ge\/#website","url":"https:\/\/blog.hamk.fi\/ge\/","name":"gamEngine lab","description":"This blog is about beneficial use of gameengines and related technologies like virtual reality and research, projects &amp; results done in HAMK Smart related to these subjects.","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.hamk.fi\/ge\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/blog.hamk.fi\/ge\/#\/schema\/person\/aa81742ada2b0ca0527eeb4cadbc8862","name":"Toni Lavonen","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.hamk.fi\/ge\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0b1190b4e6c815ecd4200ce90ee994cd13bb15caa08117bcd6fd0b48709291a6?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0b1190b4e6c815ecd4200ce90ee994cd13bb15caa08117bcd6fd0b48709291a6?s=96&d=mm&r=g","caption":"Toni Lavonen"},"url":"https:\/\/blog.hamk.fi\/ge\/author\/toni2\/"}]}},"_links":{"self":[{"href":"https:\/\/blog.hamk.fi\/ge\/wp-json\/wp\/v2\/posts\/132","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.hamk.fi\/ge\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.hamk.fi\/ge\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.hamk.fi\/ge\/wp-json\/wp\/v2\/users\/618"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.hamk.fi\/ge\/wp-json\/wp\/v2\/comments?post=132"}],"version-history":[{"count":23,"href":"https:\/\/blog.hamk.fi\/ge\/wp-json\/wp\/v2\/posts\/132\/revisions"}],"predecessor-version":[{"id":323,"href":"https:\/\/blog.hamk.fi\/ge\/wp-json\/wp\/v2\/posts\/132\/revisions\/323"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.hamk.fi\/ge\/wp-json\/wp\/v2\/media\/262"}],"wp:attachment":[{"href":"https:\/\/blog.hamk.fi\/ge\/wp-json\/wp\/v2\/media?parent=132"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.hamk.fi\/ge\/wp-json\/wp\/v2\/categories?post=132"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.hamk.fi\/ge\/wp-json\/wp\/v2\/tags?post=132"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}