Preparing for github

This commit is contained in:
John Alanbrook 2024-03-05 23:14:26 -06:00
parent aa4b3e6954
commit 1471966cd2
30 changed files with 16 additions and 367246 deletions

View file

@ -9,9 +9,14 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions: furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in (1) The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software. all copies or substantial portions of the Software.
(2) Any games or other derivative software must display the "Prosperon" logo
at near the beginning of the software's startup, before the chief purpose
of the software is underway.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL

6
README Normal file
View file

@ -0,0 +1,6 @@
![alt text](doc/prosperon_orb_horizontal.gif)
The easily moddable, programming minded, 2D-first game engine. The aim is to make the fastest way to make games.
See the [documentation](doc/prosperon.org) for more information, including how to compile.
*Prosperon is useful, but is a work in progress. Breaking changes are frequent.*

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -33,6 +33,9 @@ Install the most [[https://prosperon.dev/download][recent binaries]] into your ~
*** Windows *** Windows
Copy the executable into any folder and run it. If no game is deteced, it scaffolds for you. Copy the executable into any folder and run it. If no game is deteced, it scaffolds for you.
*** Building
You will need ~sokol-shdc~ in the top of your directory. Then, ~make shaders~ and ~make~. The command ~make install~ copies it to your home's ~.bin~ path.
** Playing your first game ** Playing your first game
Download any of the completed example projects. Run ~prosperon play~ in the folder. Download any of the completed example projects. Run ~prosperon play~ in the folder.

View file

@ -1,4 +0,0 @@
(font
:path "LessPerfectDOSVGA.ttf"
:size 16
)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 298 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 187 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 293 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 157 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 197 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 226 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 339 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 234 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 187 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 224 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 206 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 304 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.2 KiB

View file

@ -1,4 +0,0 @@
# Prosperon Engine
The easily extendable, developer minded, 2D-first game engine.
See the documentation [here](https://prosperon.dev/doc).

View file

@ -487,7 +487,7 @@ var editor = {
editor.edit_level.objects.forEach(function(obj) { editor.edit_level.objects.forEach(function(obj) {
if (!obj._ed.selectable) if (!obj._ed.selectable)
GUI.image("icons/icons8-lock-16.png", obj.screenpos()); GUI.text("lock", obj,screenpos());
}); });
Debug.draw_grid(1, editor.grid_size, Color.Editor.grid.alpha(0.3)); Debug.draw_grid(1, editor.grid_size, Color.Editor.grid.alpha(0.3));

View file

@ -84,7 +84,6 @@ void font_init() {
.label = "text buffer" .label = "text buffer"
}); });
// font_set("fonts/LessPerfectDOSVGA.ttf");
font_set("fonts/c64.ttf"); font_set("fonts/c64.ttf");
bind_text.fs.images[0] = font->texID; bind_text.fs.images[0] = font->texID;
bind_text.fs.samplers[0] = sg_make_sampler(&(sg_sampler_desc){}); bind_text.fs.samplers[0] = sg_make_sampler(&(sg_sampler_desc){});

View file

@ -282,26 +282,6 @@ int main(int argc, char **argv) {
signal(SIGFPE, seghandle); signal(SIGFPE, seghandle);
// signal(SIGBUS, seghandle); // signal(SIGBUS, seghandle);
#endif
#ifdef STEAM
steaminit();
#endif
#ifdef DISCORD
struct IDiscordCore *core;
DiscordCreate(DISCORD_VERSION, &(struct DiscordCreateParams){
.client_id = 1176355046590533714,
.flags = DiscordCreateFlags_Default
}, &core);
struct IDiscordUserManager *dum;
struct IDiscordActivityManager *dam;
dam = core->get_activity_manager(core);
struct DiscordActivity da;
sprintf(da.state, "Playing Solo Pinball");
sprintf(da.details, "COMPetitive");
dam->update_activity(dam, &da, NULL, NULL);
#endif #endif
resources_init(); resources_init();

View file

@ -1,40 +0,0 @@
var binds = [];
var cbs = [];
var fats = [];
var count = 1000000;
var a = {
n: 1
}
function test_a() {
this.n++;
}
var start = Date.now();
for (var i = 0; i < count; i++)
binds.push(test_a.bind(a));
console.log(`Make bind time: ${Date.now()-start} ms`);
start = Date.now();
for (var i = 0; i < count; i++)
fats.push(() => test_a.call(a));
console.log(`Make fat time: ${Date.now()-start} ms`);
start = Date.now();
for (var i = 0; i < count; i++) {
binds[i]();
}
console.log(`Bind time: ${Date.now()-start} ms`);
start = Date.now();
for (var i = 0; i < count; i++) {
fats[i]();
}
console.log(`Fat time: ${Date.now()-start} ms`);
start = Date.now();
for (var i = 0; i < count; i++)
test_a.call(a);
console.log(`Call time: ${Date.now()-start} ms`);

View file

@ -1,24 +0,0 @@
var binds = [];
var a = {
n: 1,
test() { this.n++; }
};
var count = 10000000;
var start = Date.now();
for (var i = 0; i < count; i++)
binds.push(a.test.bind(a));
console.log(`Make bind time: ${Date.now()-start} ms`);
start = Date.now();
for (var i = 0; i < count; i++)
binds[i]();
console.log(`Bind time: ${Date.now()-start} ms`);
start = Date.now();
for (var i = 0; i < count; i++)
a['test']();
console.log(`Call time: ${Date.now()-start} ms`);