"if(test(" Das ist Unfug. Die Variable test vom Typ GameObject kannst du nicht wie eine Funktion benutzen.
Du meinst bestimmt if(test && Input.GetTouch(i).position))
"if(test(" Das ist Unfug. Die Variable test vom Typ GameObject kannst du nicht wie eine Funktion benutzen.
Du meinst bestimmt if(test && Input.GetTouch(i).position))
Das klingt ja nicht nach einem Problem mit Box Collidern... Vielleicht ist es hilfreich, wenn du erst ein paar Tutorials folgst?
Was das Platzieren der Collider angeht, empfehle ich dir, diese nicht am Haus selbst anzubringen, sondern dafür neue Objekte zu verwenden (z. B. Cubes ohne Renderer). Diese platzierst du dann wo das Haus ist. Am Ende erstellst du dann noch ein leeres Game Objekt, das du Haus nennst. Dieses schiebst du mittig unter dein Haus Model. Dann kannst du in der Hierarchy alle Collider und das Haus Model in das leere Objekt ziehen, damit alles ordentlich ist.
Gruß, Gameplay Guy
Prinzipiell darfst du mit der kostenlosen Version dein Spiel auch verkaufen, das ist erlaubt.
Eine gecrackte Version darfst du im Grunde gar nicht benutzen - d.h. sollte wirklich jemand prüfen, ob bei dir alles mit rechten Dingen zu geht, wäre dies das eigentliche Problem. Ich würde das Risiko nicht eingehen, aber das ist ja jedem selbst überlassen.
Unity ist für deinen Zweck geeignet, jedoch würde ich dir empfehlen, auch die Unreal Engine / UDK mal anzuschauen, da diese schon einiges an Funktionalität fertig hat, was du bei Unity erst selbst bauen müsstest.
Also ich habe auf dem MacBook Pro gute Erfahrungen mit der Unity Engine gemacht. Andere Mac-fähige Editoren sind mir nicht bekannt.
Als Programmierumgebung ist Eclipse nicht schlecht.
Ich hatte bisher keine Probleme, beide Versionen (und 4.5.3) abwechselnd zu benutzen. Ich würde allerdings trotzdem schwerstens empfehlen, regelmäßige Backups zu machen, falls doch einmal etwas schief geht.
In Unity kommt es darauf an, wie du die Rotation verwendest. Im Inspektor sind es sehr wohl Grad. Wenn du eine Rotation per Script erzeugst, ist diese ein Quaternion, welches von sich aus Radians verwendet.
Willst du eine Rotation trotzdem in Grad angeben, so kannst du sie so erzeugen (C#):
Quaternion rotation = Quaternion.Euler(x, y, z);
x, y und z sind die jeweiligen Achsen (in Grad).
Willst du die Rotation in Grad auslesen, geht das auch. Beispiel:
float degreesX = transform.rotation.eulerAngles.x;
degreesX enthält nun die Drehung des aktuellen Objektes um die X-Achse, in Grad.
Mit Scripten gibst du den Objekten ihre Funktionalität. Folgendes sind alles Fälle, in denen ein Script das entsprechende Objekt steuert:
In einem Script beschreibst du z.B. was ein Objekt jedes "Frame" (~jedes 60tel einer Sekunde), am Start des Spiels, bei einer Kollision, oder anderen Ereignissen machen soll. Auch benutzt du Scripte um Objekte mit einander in Verbindung zu setzen. So reagiert vielleicht ein Objekt mit einem Script für ein Raumschiff anders auf das Script eines Asteroiden als ein Objekt mit einem Script für eine Rakete.
Probier es mal mit Construct 2. Das ist einfach zu lernen und man muss nicht programmieren können. Unsere Studenten lassen wir alle damit anfangen, noch bevor sie Programmieren lernen.
if(transform.position.y < 0) { transform.position = new Vector3 (7, 7, 7); }
Auch sollte Nintendo deine Idee gefallen, würden sie mit der Verwendung rechtlich problematischen Boden betreten. Der Aufwand alleine, das alles abzuklären, übersteigt in der Regel den Wert der Idee.
Denn jeder hat Ideen. Auch bei Nintendo. Was echten Wert hat, ist die Umsetzung.
Meine Antwort bezieht sich jetzt nicht direkt auf dein Problem, ist aber auch als Lösung geeignet:
Auf dem Asset Store gibt es mehrere kostenlose Save Game Erweiterungen, von denen einige sehr benutzerfreundlich sind. Alle ermöglichen es dir, den Spielstand in einer Datei abzuspeichern, meist indem du auswählst, welche Objekte und Variablen du speichern möchtest.
Für deinen Fall: Du kannst das Objekt mit dem Score (oder mehreren) einfach als Datei abspeichern und wieder laden.
Am besten wartest du noch ein bis zwei Monate. Unity 4.6 kommt mit einem komplett neuen objekt orientierten GUI System.
Du kannst mit der Indie Version von Unity kostenlos dein Spiel erstellen und zum Verkauf freigeben. Du bist allerdings an die Unity Lizenz gebunden, die mit diversen Verpflichtungen einhergeht. Z.B. musst du ab einer gewissen Gewinnsumme zur Pro-Version wechseln, darfst nicht Pro und Indie in der gleichen Firma nutzen, etc.
Die Grenze ist allerdings ziemlich hoch angelegt, d.h. sollte es soweit kommen, kannst du dir auch ohne weiteres die (sowieso schon recht günstige) Pro Version kaufen.
Du bist mit der Indie Version allerdings auch eingeschränkt, was besondere Features angeht. Siehe hier:
http://unity3d.com/unity/licenses
Was das angeht, wirst du wesentlich schneller an die Grenze stoßen.
Ich glaube diese Frage wurde hier schon mehrfach beantwortet. Am besten mal die Suche verwenden.
Oder Wikipedia. Erklärt das ganze auch recht ausführlich.
Welcher Job am Ende am besten für dich ist, musst du selbst herausfinden. Einige Studiengänge beinhalten mehrere Richtungen und es ist möglich, erstmal von allem ein bisschen zu erfahren.
Am wichtigsten ist es, zu schauen, welche Aktivitäten dir am meisten Freude bereiten und dich dann in eine Richtung zu spezialisieren, die diese Aktivitäten enthält. Es klingt für mich, als wäre Concept Artist in der Tat das Richtige für dich.
Mein Tipp: Versuch nicht das Rad neu zu erfinden. Benutze eine fertige Engine (die dx für dich bedient), dann kannst du dich darauf konzentrieren ein gutes Spiel zu entwickeln.
Meine Studenten lernen in zwei Jahren mit Unity und C# ein Spiel zu entwickeln. Das Spiel selbst lässt sich dann in mehreren Monaten (sagen wir ein halbes Jahr) abrunden. Aber was du in dieser Zeit erreichst, kommt immer darauf an mit wieviel Mann du dran sitzt und wie viel du schon gelernt hast. Von C++ lassen wir die Finger. Das ist für alle außer Entwickler von AAA Titeln oder Konsolenspielen, die ihre eigene Engine entwickeln oder aufmotzen müssen, nur kontraproduktiv.
Für einen Shooter wäre z.B. das UDK oder die CryEngine ein guter Start.
Du kannst es natürlich als Spieletester versuchen. Aber sogar das besteht mehr aus Formulare ausfüllen oder Reports schreiben als aus Spielen. Und wenn du spielst, dann nicht zum Spaß, sondern um gezielt Fehler zu finden.
Also werd' vielleicht doch besser Croupier oder Hartz IV Empfänger.
Na, dann bist du ein sogenannter "Starter", also jemand der besser darin ist, Projekte zu beginnen als zu beenden. Davon haben wir in der Spieleindustrie ziemlich viele.
Was für mich funktioniert: mein Hobby Projekt entwerfe ich nicht zu Ende, sonst finde ich es uninteressant. Sondern ich arbeite daran in "Sprints" (siehe Agile Methode), d. h. in Blöcken von ca 2-4 Wochen in denen ich am Anfang ein neues Feature plane, das am Ende fertig sein muss.
Was neue Ideen angeht, sobald du bereits an einem Projekt arbeitest, dass es dir wert ist: Aufschreiben, und in allen Details ausarbeiten (auf Papier). Danach gibt dein Gehirn ruhe und es hört auf ständig darüber nachzudenken - dann kannst du wieder an deinem eigentlichen Projekt weiter arbeiten.
Für beides brauchst du demonstrierbar viel Kreativität. Als Storywriter solltest du in der Lage sein, dir beliebig interessante Geschichten zu langweiligen Tätigkeiten ausdenken zu können. (z.B. zu "Töte 10x Monster X"). Natürlich ein gutes Gefühl für Spannungsbogen / Charakterentwicklung, etc. etc. noch dazu.
Als Level Designer solltest du sehr gut mit 3D Tools (Maya / Blender / 3ds Max / etc.) umgehen können und am besten noch zeichnerische Fähigkeiten haben, mit Farbe umgehen können, etc. Ein Kunst- oder Medienstudium auf Fachhochschulniveau kann hier eine gute Grundlage sein.
In beiden Fällen brauchst du ein gutes Portfolio (auch als Praktikant) um Chancen zu haben. Das heißt so viel Material erzeugen wie möglich, und das beste davon in eine Mappe und Website packen. Das könnte dann z.B. so aussehen:
http://www.kchandlerdesign.com/#!__student-work
Du solltest möglichst viele (verschiedene!) Spiele spielen und vor allem darauf schauen, -wie- die Spiele gemacht sind und -warum- sie gut sind.
Du solltest in der Lage sein umzuziehen. Denn etwas vor Ort zu finden ist beinahe unmöglich, außer du wohnst in einer Großstadt.
Viel Erfolg!
Eigentlich solltest du dann in eine von diesen Richtungen gehen:
Andere Sichtweise: gerade als Anfänger sollte man die Finger von C++ oder C lassen. Fang am besten mit C# oder UnityScript (JavaScript) in Unity an. Das ist eine "sichere", relativ einfache Umgebung in der man nicht viel falsch machen kann und schnell Ergebnisse erzielen kann, wenn man sich ein bisschen reinkniet.
Wenn du da ordentlich durchsteigst, kannst du immer noch C++ lernen. Dass du als Hobbyprogrammierer nicht in ein paar Wochen (oder Monaten, oder Jahren) zum Experten wirst, solltest du natürlich berücksichtigen. Jedoch kannst du dich mit Unity bis zum Expertenniveau herantasten.
Basic würde ich sein lassen. Das hat kaum Mehrwert. Java ist auch keine gute Sprache für Spiele.
Was das Lernen angeht, sind allerdings anständige Englischkenntnisse eine Vorraussetzung. Wenn dir das fehlt, fang erstmal da an. Tutorials gibt's jede Menge - gerade auf YouTube:
http://www.youtube.com/results?search_query=unity+beginner