User Tools

Site Tools


monogame:monogame

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
monogame:monogame [2024/10/10 13:11] – [GamePads] mrvalentinemonogame:monogame [2024/10/10 13:58] (current) – [Tool Engine] mrvalentine
Line 7: Line 7:
 ===== History of MonoGame ===== ===== History of MonoGame =====
  
-You can read about the history of MonoGame here: https://monogame.net/about.html+You can read about the history of MonoGame here: https://monogame.net/about/
  
 ===== History of Microsoft XNA ===== ===== History of Microsoft XNA =====
Line 42: Line 42:
 You can read more about the GamePad [[monogame:gamepads:gamepads|here]]. You can read more about the GamePad [[monogame:gamepads:gamepads|here]].
  
-==== Where Does MonoGame Sit ====+===== Where Does MonoGame Sit ===== 
 + 
 +==== Tool Engine ====
  
-### Tool Engine 
 **Unity**: A widely-used game engine that supports C# scripting. It offers a comprehensive suite of tools for game development, including a visual editor, asset management, and a robust physics engine. Unity is ideal for both 2D and 3D game development. **Unity**: A widely-used game engine that supports C# scripting. It offers a comprehensive suite of tools for game development, including a visual editor, asset management, and a robust physics engine. Unity is ideal for both 2D and 3D game development.
  
Line 51: Line 52:
 **Godot**: An open-source game engine that supports C# scripting. It provides a flexible scene system, a visual editor, and a variety of tools for 2D and 3D game development. **Godot**: An open-source game engine that supports C# scripting. It provides a flexible scene system, a visual editor, and a variety of tools for 2D and 3D game development.
  
-### Game Engine+**FlatRedBall**: A game development platform built in Cthat is perfect for 2D game development. It includes tools like Glue, which generates boilerplate code, and supports integration with popular formats like Tiled and Spriter. 
 +==== Game Engine ==== 
 **Unity Engine**: The core of Unity, which runs the game and provides essential services like rendering, physics, and input handling. Unity's engine includes internal tools for debugging, profiling, and performance optimization. **Unity Engine**: The core of Unity, which runs the game and provides essential services like rendering, physics, and input handling. Unity's engine includes internal tools for debugging, profiling, and performance optimization.
  
 **Unreal Engine**: The core of Unreal, which handles rendering, physics, and other low-level operations. It includes powerful internal tools for animation, AI, and networked multiplayer. **Unreal Engine**: The core of Unreal, which handles rendering, physics, and other low-level operations. It includes powerful internal tools for animation, AI, and networked multiplayer.
  
-### Game Framework+**FlatRedBall Engine**: The core of FlatRedBall, which focuses on 2D game development. It provides efficiency, stability, and features refined over two decades. 
 +==== Game Framework ==== 
 **Unity Framework**: The underlying structure that supports game development in Unity. It includes components like the GameObject system, MonoBehaviour scripts, and the Unity API, which provide the building blocks for creating games. **Unity Framework**: The underlying structure that supports game development in Unity. It includes components like the GameObject system, MonoBehaviour scripts, and the Unity API, which provide the building blocks for creating games.
  
 **Unreal Framework**: The underlying structure in Unreal Engine, including systems for actors, components, and blueprints. It provides the foundational elements needed to build complex game logic. **Unreal Framework**: The underlying structure in Unreal Engine, including systems for actors, components, and blueprints. It provides the foundational elements needed to build complex game logic.
  
-### Framework+==== Framework ==== 
 **MonoGame**: A framework for building cross-platform games using C#. It provides a simple API for handling graphics, input, and audio, making it a popular choice for 2D game development. **MonoGame**: A framework for building cross-platform games using C#. It provides a simple API for handling graphics, input, and audio, making it a popular choice for 2D game development.
  
Line 70: Line 76:
 **Stride (formerly Xenko)**: An open-source C# game engine for realistic rendering and VR. It provides a full suite of tools for game development, including a visual editor and asset management. **Stride (formerly Xenko)**: An open-source C# game engine for realistic rendering and VR. It provides a full suite of tools for game development, including a visual editor and asset management.
  
-### Raw Calls+==== Raw Calls ==== 
 **C++**: When performance is critical, developers might use C++ for low-level operations. This involves writing code that directly interacts with hardware or the operating system, bypassing higher-level abstractions. **C++**: When performance is critical, developers might use C++ for low-level operations. This involves writing code that directly interacts with hardware or the operating system, bypassing higher-level abstractions.
  
-### Bare Metal Coding+==== Bare Metal Coding ==== 
 **Machine Code/Assembly**: The lowest level of programming, where developers write instructions directly for the CPU. This is rarely used in modern game development due to its complexity and the availability of higher-level tools. **Machine Code/Assembly**: The lowest level of programming, where developers write instructions directly for the CPU. This is rarely used in modern game development due to its complexity and the availability of higher-level tools.
  
-### Effort Required+==== Effort Required ==== 
 - **Tool Engine**: High effort for initial setup and learning the tool, but it significantly speeds up development once mastered. - **Tool Engine**: High effort for initial setup and learning the tool, but it significantly speeds up development once mastered.
 +
 - **Game Engine**: Moderate effort to understand the engine's architecture and optimize performance. - **Game Engine**: Moderate effort to understand the engine's architecture and optimize performance.
 +
 - **Game Framework**: Moderate effort to implement game logic and mechanics using the provided framework. - **Game Framework**: Moderate effort to implement game logic and mechanics using the provided framework.
 +
 - **Framework**: Moderate to high effort, depending on the complexity of the game and the framework's capabilities. - **Framework**: Moderate to high effort, depending on the complexity of the game and the framework's capabilities.
 +
 - **Raw Calls**: High effort due to the need for detailed knowledge of the hardware and low-level programming. - **Raw Calls**: High effort due to the need for detailed knowledge of the hardware and low-level programming.
 +
 - **Bare Metal Coding**: Very high effort, requiring expertise in assembly language and hardware architecture. - **Bare Metal Coding**: Very high effort, requiring expertise in assembly language and hardware architecture.
  
 By focusing on C# and using C++ only where necessary, you can leverage the strengths of both languages to create efficient and high-quality games. Yes, you can use C++ in C#. By focusing on C# and using C++ only where necessary, you can leverage the strengths of both languages to create efficient and high-quality games. Yes, you can use C++ in C#.
monogame/monogame.1728565918.txt.gz · Last modified: 2024/10/10 13:11 by mrvalentine