|It has been suggested that this page's contents be merged with the page Alternatives to Scratch. You can discuss this on the page's talk page.|
|Scratch and the Scratch Wiki are not responsible for the security of external programs or links in this page or section.|
Though Scratch can be an amazing resource for learning to code and expressing one's talents, if one is very serious, he or she may need to advance to alternative, other languages.
In software development there are two main fields:
- Programming — the code for the application
- Modeling / Art — the visual interface of an application
|Note:||These fields are primary in most forms of software development, but not all.|
|Note:||There are various programming tools and tutorials online.|
Programming is a large and diverse field with many different languages. Each language has its own syntax, or set of codes readable by the computer. Computers can only read binary code, a series of multiple "1"s and "0"s. Therefore, languages are translated into "computer code", or readable format, by a process called compiling.
There are two main types of programming languages: text-based and object-oriented. Scratch is an object-oriented language, meaning visual objects are used with a user-friendly interface for the ease of programming without memorizing syntax. These visual objects, in the case of Scratch, are blocks. A text-based language, such as Flash, requires text codes from a syntax to be typed into a code or text editor.
Learning the basic syntax
A Game Engine is some code that handles all the objects and actions in a game. They come in many forms, from IDEs (integrated development environment — like Scratch) to code based ones (like Irrlicht). Companies will often keep the same game engine with slight modifications and adjustments when releasing another version of a game. This saves the time of creating an entirely new game engine.
One game engine to start with is Unity3d, which has a free version for a half a gigabyte download.
Modeling / Artist
3D Modeling (Entity)
- See also: Three Dimensional Projects
An entity is a 3D model.
Here is a tutorial that explains the key concepts of 3D modeling.
2D Modeling (Sprites/Billboards)
- See also: Two Dimensional Objects
Animation Frames are like Costumes.
Sprites are used for anything in the world, but generally you don't use them for text like in Scratch; labels are built into most modern 2D game engines.
Sprites are also used in 3D games to make effects like explosions, grass and sometimes even trees.
Three-Dimensional Coordinate Plane
In mathematics, 3D is set about three different coordinates: X,Y, and Z, with X being horizontal, Y being depth, and Z being vertical. However, sometimes in programming 3D design, the axis are flipped, with X remaining horizontal, but Y being vertical and Z being depth.
This is because the renderer, DirectX, uses the screen as a starting point.
Because X,Y is already width/height of the screen, it makes forwards/backwards Z.