MCPcopy Create free account
hub / github.com/chrxh/alien / processIntern

Method processIntern

source/Gui/GettingStartedWindow.cpp:28–406  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

26}
27
28void GettingStartedWindow::processIntern()
29{
30 drawTitle();
31
32 if (ImGui::BeginChild("##", ImVec2(0, ImGui::GetContentRegionAvail().y - scale(50.0f)), false)) {
33 ImGui::PushTextWrapPos(ImGui::GetCursorPos().x + ImGui::GetContentRegionAvail().x);
34
35 /**
36 * INTRO
37 */
38 drawHeading1("Introduction");
39
40 ImGui::Text("ALIEN is an artificial life and physics simulation tool based on a CUDA-powered 2D particle engine for soft bodies and fluids.");
41 ImGui::Text(
42 "Each particle can be equipped with higher-level functions including sensors, muscles, neurons, constructors, etc. that allow to "
43 "mimic certain functionalities of biological cells or of robotic components. Multi-cellular organisms are simulated as networks of "
44 "particles that exchange energy and information over their bonds. The engine encompasses a genetic system capable of encoding the "
45 "blueprints of organisms in genomes which are stored in individual cells. The simulator is capable to simulate entire ecosystems inhabited "
46 "by different populations where every object is composed of interacting particles with specific functions (regardless of whether it models a "
47 "plant, herbivore, carnivore, virus, environmental structure, etc.).");
48
49 /**
50 * FIRST STEPS
51 */
52 drawHeading1("First steps");
53
54 ImGui::Text("The easiest way to get to know the ALIEN simulator is to download and run an existing simulation file. You can then try out different "
55 "function and modify the simulation according to your wishes.");
56 ImGui::Text(
57 "Various examples can be found in the in-game simulation browser demonstrating capabilities of the "
58 "engine ranging from pure physics examples, self-deploying structures, self-replicators to evolving ecosystems. If not already open, please "
59 "invoke Network " ICON_FA_LONG_ARROW_ALT_RIGHT " Browser in the menu bar. "
60 "Simulations can be conveniently downloaded and uploaded from/to the connected server (alien-project.org by default). "
61 "In order to upload own simulations to the server or rate other simulations, you need to register a new user, which can be accomplished in "
62 "the login dialog.");
63
64 ImGui::Text("For the beginning, however, you can use the example already loaded. Initially, it is advisable to become acquainted with the "
65 "windows for temporal and spatial controls. The handling should be intuitive and requires no deeper knowledge.");
66 drawItemText("In the temporal control window, a simulation can be started or paused. The execution speed "
67 "may be regulated if necessary. In addition, it is possible to calculate and revert single time steps as "
68 "well as to make snapshots of a simulation to which one can return at any time without having "
69 "to reload the simulation from a file.");
70 drawItemText("The spatial control window combines zoom information and settings on the one hand, and "
71 "scaling functions on the other hand. A quite useful feature in the dialog for "
72 "scaling/resizing is the option 'Scale content'. If activated, periodic spatial copies of "
73 "the original world can be made.");
74 ImGui::Text("There are basically two modes of how the user can operate in the view where the simulation is "
75 "shown: a navigation mode and an edit mode. You can switch between these two modes by invoking "
76 "the edit button at the bottom left of the screen or in the menu via Editor " ICON_FA_LONG_ARROW_ALT_RIGHT " Activate.");
77 drawItemText(
78 "The navigation mode is enabled by default and allows you to zoom in (holding the left mouse "
79 "button) and out (holding the right mouse button) continuously. Alternatively, you can also use the mouse wheel. By holding the middle mouse "
80 "button and moving the mouse, you can pan the visualized section of the world.");
81 drawItemText(
82 "In the edit mode, it is possible to push bodies around in a running simulation by holding and moving the right mouse button. "
83 "With the left mouse button you can drag and drop objects. Please try this out. It can make a lot of fun! The editing mode also allows you "
84 "to activate lot of editing windows (Pattern editor, Creator, Multiplier, Genome editor, etc.) whose possibilities can be explored over time. "
85 "Practically all properties of each single particle can be manipulated. In addition, there are mass editing functions available.");

Callers

nothing calls this directly

Calls 3

ImVec2Class · 0.85
scaleFunction · 0.85

Tested by

no test coverage detected