{"id":200,"date":"2020-11-18T13:44:21","date_gmt":"2020-11-18T12:44:21","guid":{"rendered":"https:\/\/ksr-lu.ch\/unityblog\/?p=200"},"modified":"2021-01-20T15:36:55","modified_gmt":"2021-01-20T14:36:55","slug":"skripte","status":"publish","type":"post","link":"https:\/\/ksr-lu.ch\/unityblog\/2020\/11\/18\/skripte\/","title":{"rendered":"Skripte &#8211; Was und wie?"},"content":{"rendered":"\n<p class=\"has-very-light-gray-background-color has-background\">Um ein tolles Spiel zu erstellen, musst du Programmieren. Dies tust du anhand von Skripten die du dann dem Objekt hinzuf\u00fcgst.<\/p>\n\n\n\n<h3>Was sind Skripte?<\/h3>\n\n\n\n<p>Skripte sind sehr wichtige Teile bei der Spielentwicklung. Sie enthalten den Code, den du brauchst, um das Spiel zum Laufen zu bringen. Ein Spiel ohne eine M\u00f6glichkeit etwas zu tun ist ja langweilig. <a rel=\"noreferrer noopener\" aria-label=\"Man kann nicht einfach nur zusehen wie ein Block runterf\u00e4llt. (\u00f6ffnet in neuem Tab)\" href=\"https:\/\/ksr-lu.ch\/unityblog\/2020\/11\/06\/die-ersten-versuche\/\" target=\"_blank\">Man kann nicht einfach nur zusehen, wie ein Block runterf\u00e4llt.<\/a> <\/p>\n\n\n\n<p>Der Code kann zum Beispiel den Input vom Spieler nehmen und ihn zu etwas anderem umwandeln. Somit kann man das Spiel auch spielbar machen. Nicht einmal einen EXIT-Knopf kann man ohne etwas Code machen.<\/p>\n\n\n\n<p>In Unity schreibt man die Skripte und f\u00fcgt sie dann, gleich wie die Physik, zum Objekt hinzu.<\/p>\n\n\n\n<h3>Wie erstellt man ein Skript?<\/h3>\n\n\n\n<p>Um ein Skript zu erstellen, musst du zuerst <strong>Rechtsklick <\/strong>auf den <strong>Assets-Ordner<\/strong> dr\u00fccken. Dann gehst du auf <strong>Create<\/strong> und dort auf <strong>C# Script<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img width=\"1024\" height=\"801\" src=\"https:\/\/ksr-lu.ch\/unityblog\/wp-content\/uploads\/sites\/101\/2020\/11\/image-1024x801.png\" alt=\"\" class=\"wp-image-202\" srcset=\"https:\/\/ksr-lu.ch\/unityblog\/wp-content\/uploads\/sites\/101\/2020\/11\/image-1024x801.png 1024w, https:\/\/ksr-lu.ch\/unityblog\/wp-content\/uploads\/sites\/101\/2020\/11\/image-300x235.png 300w, https:\/\/ksr-lu.ch\/unityblog\/wp-content\/uploads\/sites\/101\/2020\/11\/image-768x601.png 768w, https:\/\/ksr-lu.ch\/unityblog\/wp-content\/uploads\/sites\/101\/2020\/11\/image.png 1524w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<div class=\"wp-block-media-text alignwide has-media-on-the-right is-stacked-on-mobile\" style=\"grid-template-columns:auto 24%\"><figure class=\"wp-block-media-text__media\"><img width=\"187\" height=\"200\" src=\"https:\/\/ksr-lu.ch\/unityblog\/wp-content\/uploads\/sites\/101\/2020\/11\/image-1.png\" alt=\"\" class=\"wp-image-204 size-full\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<p style=\"font-size:15px\">Sobald du ein Skript erstellt hast, erscheint es im Assets-Ordner und du kannst dem Skript einen Namen geben. In meinem Fall w\u00e4re das <strong>Skript1.<\/strong><\/p>\n<\/div><\/div>\n\n\n\n<div style=\"height:25px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Wenn du nun diese Datei doppelklickst, wird <strong>Visual Studio<\/strong> ge\u00f6ffnet. Dieses musst du aber vorher installiert haben. Ich werde dazu nicht genauer eingehen, aber du kannst es auf folgender Seite herunterladen:<\/p>\n\n\n\n<p><a href=\"https:\/\/visualstudio.microsoft.com\/de\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Visual Studio auf der offiziellen Seite herunterladen (\u00f6ffnet in neuem Tab)\">Visual Studio auf der offiziellen Seite herunterladen<\/a><\/p>\n\n\n\n<p>Dieses <strong>Skript1.cs<\/strong> sollte nun bereits folgenden Code enthalten:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>using System.Collections;\nusing System.Collections.Generic;\nusing UnityEngine;\n\npublic class Skript1 : MonoBehaviour\n{\n    \/\/ Start is called before the first frame update\n    void Start()\n    {\n        \n    }\n\n    \/\/ Update is called once per frame\n    void Update()\n    {\n        \n    }\n}<\/code><\/pre>\n\n\n\n<p>Wie bereits oben angedeutet, endet die Datei nun auf <strong>.cs<\/strong>. Das bedeutet <strong>C-Sharp<\/strong> und steht dort, weil es eine C-Sharp Datei ist. C-Sharp (C#) ist eine <strong>Programmiersprache<\/strong>. Unity nutzt nur diese Sprache.<\/p>\n\n\n\n<h3>Was bedeutet dieser Code?<\/h3>\n\n\n\n<p>So viel musst du gar nicht \u00fcber diesen Code wissen. Du brauchst nur folgende Linien:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ Start is called before the first frame update\n    void Start()\n    {\n        \n    }\n\n\/\/ Update is called once per frame\n    void Update()\n    {\n        \n    }<\/code><\/pre>\n\n\n\n<p>Die geschweiften Klammern <strong>{}<\/strong> sind der Ort, wo man seinen Code hineinschreiben muss. Wie schon beschrieben wird, wird die <strong>Start()<\/strong> Funktion einmal ganz am Anfang ausgef\u00fchrt und die <strong>Update()<\/strong> Funktion in jedem &#8222;Frame&#8220;. Wir wissen ja, das ein Video aus vielen Bildern entsteht. Bei Spielen ist das nicht anders. Das heisst, in jedem einzelnen Bild wird diese Update() Funktion abgerufen.<\/p>\n\n\n\n<p>Ich werde in diesem Blog nicht weiter auf das Programmieren eingehen. Wenn du das k\u00f6nnen m\u00f6chtest, so schaue doch in meinem <a href=\"https:\/\/ksr-lu.ch\/unityblog\/2020\/11\/17\/unity-lernen\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"letzten Blog (\u00f6ffnet in neuem Tab)\">letzten Blog<\/a> nach, wie du das Lernen kannst!<\/p>\n\n\n\n<h3>Wie f\u00fcge ich Skripte zu einem Objekt hinzu?<\/h3>\n\n\n\n<p>Skripte zu einem Objekt hinzuf\u00fcgen ist nicht sehr schwer. Es gibt da zwei M\u00f6glichkeiten:<\/p>\n\n\n\n<p>Die erste M\u00f6glichkeit ist, dass du das Skript aus dem Assets-Ordner direkt in den Inspector ziehst, nachdem du das Objekt ausgew\u00e4hlt hast.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img width=\"1024\" height=\"219\" src=\"https:\/\/ksr-lu.ch\/unityblog\/wp-content\/uploads\/sites\/101\/2020\/11\/image-2-1024x219.png\" alt=\"\" class=\"wp-image-210\" srcset=\"https:\/\/ksr-lu.ch\/unityblog\/wp-content\/uploads\/sites\/101\/2020\/11\/image-2-1024x219.png 1024w, https:\/\/ksr-lu.ch\/unityblog\/wp-content\/uploads\/sites\/101\/2020\/11\/image-2-300x64.png 300w, https:\/\/ksr-lu.ch\/unityblog\/wp-content\/uploads\/sites\/101\/2020\/11\/image-2-768x164.png 768w, https:\/\/ksr-lu.ch\/unityblog\/wp-content\/uploads\/sites\/101\/2020\/11\/image-2-1536x329.png 1536w, https:\/\/ksr-lu.ch\/unityblog\/wp-content\/uploads\/sites\/101\/2020\/11\/image-2.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-media-text alignwide has-media-on-the-right is-stacked-on-mobile\" style=\"grid-template-columns:auto 23%\"><figure class=\"wp-block-media-text__media\"><img width=\"526\" height=\"637\" src=\"https:\/\/ksr-lu.ch\/unityblog\/wp-content\/uploads\/sites\/101\/2020\/11\/image-3.png\" alt=\"\" class=\"wp-image-211 size-full\" srcset=\"https:\/\/ksr-lu.ch\/unityblog\/wp-content\/uploads\/sites\/101\/2020\/11\/image-3.png 526w, https:\/\/ksr-lu.ch\/unityblog\/wp-content\/uploads\/sites\/101\/2020\/11\/image-3-248x300.png 248w\" sizes=\"(max-width: 526px) 100vw, 526px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<p style=\"font-size:15px\"> Die zweite M\u00f6glichkeit ist, wie beim Physiksystem, einfach auf <strong>Add Component<\/strong> zu dr\u00fccken und nach dem Skript-Namen zu suchen. <\/p>\n<\/div><\/div>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Ich hoffe es hat dir gefallen! Hast du Fragen? Lass doch einen Kommentar da! Vielen Dank f\u00fcrs Lesen und bis zum n\u00e4chsten mal!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wie funktionieren Skripte und wie f\u00fcgt man sie hinzu? Das wirst du in diesem Blogbeitrag lernen!<\/p>\n","protected":false},"author":134,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/ksr-lu.ch\/unityblog\/wp-json\/wp\/v2\/posts\/200"}],"collection":[{"href":"https:\/\/ksr-lu.ch\/unityblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ksr-lu.ch\/unityblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ksr-lu.ch\/unityblog\/wp-json\/wp\/v2\/users\/134"}],"replies":[{"embeddable":true,"href":"https:\/\/ksr-lu.ch\/unityblog\/wp-json\/wp\/v2\/comments?post=200"}],"version-history":[{"count":14,"href":"https:\/\/ksr-lu.ch\/unityblog\/wp-json\/wp\/v2\/posts\/200\/revisions"}],"predecessor-version":[{"id":228,"href":"https:\/\/ksr-lu.ch\/unityblog\/wp-json\/wp\/v2\/posts\/200\/revisions\/228"}],"wp:attachment":[{"href":"https:\/\/ksr-lu.ch\/unityblog\/wp-json\/wp\/v2\/media?parent=200"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ksr-lu.ch\/unityblog\/wp-json\/wp\/v2\/categories?post=200"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ksr-lu.ch\/unityblog\/wp-json\/wp\/v2\/tags?post=200"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}