Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Copied documentation from docs.korge.org to the korge repository to be able to write documentation, code and tests in a single PR #1643

Merged
merged 1 commit into from
May 30, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
12 changes: 12 additions & 0 deletions docs/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
/.idea
/.vscode
/_site
/.sass-cache
/.jekyll-metadata
/.jekyll-cache
/.gradle
/.idea
*.iws
*.iml
*.ipr
.DS_Store
24 changes: 24 additions & 0 deletions docs/404.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
layout: default
---

<style type="text/css" media="screen">
.container {
margin: 10px auto;
max-width: 600px;
text-align: center;
}
h1 {
margin: 30px 0;
font-size: 4em;
line-height: 1;
letter-spacing: -1px;
}
</style>

<div class="container">
<h1>404</h1>

<p><strong>Page not found :(</strong></p>
<p>The requested page could not be found.</p>
</div>
63 changes: 63 additions & 0 deletions docs/@old/korge/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
---
layout: default
title: KorGE Game Engine
children: /korge/
priority: -1
fa-icon: fa-gamepad
---

<img src="/i/logos/korge.svg" width="180" height="180" style="float:left;margin-right:16px;"/>

**KorGE Game Engine** is an [Open Source](https://github.com/soywiz/korge) modern Game Engine created in [<img src="/i/logos/kotlin.svg" style="width:1.4em;height:1.4em;margin-top:-0.2em;" />Kotlin programming language](https://kotlinlang.org/) designed to be extremely portable and really enjoyable to use.

It works for **Desktop**, **Web** and **Mobile**. But allows to create other targets easily. And it is full asynchronous so it is nice to web.

<div style="clear:both;"></div>

## Tools:

KorGE uses intelliJ as IDE + Gradle for building. You can check how to [set-up the environment here](/setup).

<img src="/i/logos/gradle.svg" style="width:128px;height:128px;" />
<img src="/i/logos/intellij.svg" style="width:128px;height:128px;" />

## Dependencies:

KorGE uses [Kotlin](https://kotlinlang.org/) several other [soywiz's Korlibs libraries](https://github.com/soywiz/korlibs) and optionally [JTransc](https://github.com/jtransc/jtransc) to work:

<img src="/i/logos/kotlin.svg" width="128" height="128" style="padding:4px;" />
<img src="/i/logos/korlibs.svg" width="128" height="128" style="padding:4px;" />
<img src="/i/logos/korio.svg" width="128" height="128" style="padding:4px;" />
<img src="/i/logos/korma.svg" width="128" height="128" style="padding:4px;" />
<img src="/i/logos/korag.svg" width="128" height="128" style="padding:4px;" />
<img src="/i/logos/korim.svg" width="128" height="128" style="padding:4px;" />
<img src="/i/logos/korau.svg" width="128" height="128" style="padding:4px;" />
<img src="/i/logos/korui.svg" width="128" height="128" style="padding:4px;" />
<img src="/i/logos/klock.svg" width="128" height="128" style="padding:4px;" />
<img src="/i/logos/jtransc.svg" width="128" height="128" style="padding:4px;" />

## Targets:

* Right now with Korge you can target JVM, Android and JavaScript.

### Kotlin.JS and Kotlin.Native

At this point KorGE uses JTransc for generating other targets than normal Java/Kotlin targets.
When Kotlin supports reflection in JavaScript and Native, KorGE will target that instead of using JTransc. While keeping JTransc for other targets like C#/AS3 or when mixing Java libraries with Kotlin code.

### Future:

* It is planned a target for AS3 Adobe AIR (iOS and Android).
* A C# target for UWP applications.
* And native C++ targets for iOS, Android and other platforms.

Soywiz's korlibs are very portable so they can adapt to every major platform.

## Where to start:

You can start reading about the [setup](/setup), [the basics](/basics), [reading tutorials](/tutorials) or [watching video tutorials](/tutorials).

## Coming from other engines?

<a href="/migration/as3"><img src="/migration/as3/air_to_korge.png" width="30%" height="30%" /></a>
<a href="/migration/unity"><img src="/migration/unity/unity_to_korge.png" width="30%" height="30%" /></a>
Binary file added docs/@old/korge/migration/as3/air_to_korge.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 9 additions & 0 deletions docs/@old/korge/migration/as3/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
---
layout: default
title: "Migration from AS3"
---

![](/migration/as3/air_to_korge.png)
![](/migration/as3/starling_to_korge.png)

KorGE game engine is a perfect match for migrating Starling and Adobe AIR/Flash projects.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions docs/@old/korge/migration/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
layout: default
title: "Migration"
---
14 changes: 14 additions & 0 deletions docs/@old/korge/migration/unity/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
layout: default
title: "Migration from Unity"
---

![](/migration/unity/unity_to_korge.png)

Note that currently **KorGE is focused on 2D game development**.
Even when KorAG allows you to render 3d objects and scenes, you won't have help from the engine.

If you have a 2D game done with Unity, KorGE is a good engine to move to!

You will get the productivity and tooling of the Kotlin programming language. And you will use an OpenSource engine that you can check, understand and fix possible bugs.
Also KorGE do not enforce any kind of programming strategy. So you can use your own.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
5 changes: 5 additions & 0 deletions docs/@old/korge/plugin/gradle/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
layout: default
title: "Gradle Plugin"
fa-icon: fa-plug
---
6 changes: 6 additions & 0 deletions docs/@old/korge/plugin/intellij/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
layout: default
title: "IntelliJ Plugin"
---

[https://plugins.jetbrains.com/plugin/9676-korge-intellij-plugin](https://plugins.jetbrains.com/plugin/9676-korge-intellij-plugin)
Binary file added docs/@old/korge/setup/browse_repositories.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/@old/korge/setup/download.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
45 changes: 45 additions & 0 deletions docs/@old/korge/setup/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
---
layout: default
title: "Setup"
fa-icon: fa-check-square-o
priority: 0
---

<img src="/i/logos/intellij.svg" width="160" height="160" />
<img src="/i/logos/gradle.svg" width="160" height="160" />

KorGE game engine uses [intelliJ IDEA Community or Ultimate](https://www.jetbrains.com/idea/download/) as IDE and [Gradle](https://gradle.org/) as building tool. Korge provides [plugins for both](/plugin) in order to generate all the required preprocessed resources.

### Setup intelliJ

> You have to visit [https://www.jetbrains.com/idea/download/](https://www.jetbrains.com/idea/download/), and download an intelliJ IDEA IDE, either Community or Ultimate will work. Community is free, but Ultimate has tons of additional features, and allows you to use it as a really polyglot IDE.

![](/korge/setup/download.png)

> After installing and launching, you have to go to `Configure -> Plugins`

![](/korge/setup/plugins.png)

> Then click the `Browse repositories...` button.

![](/korge/setup/browse_repositories.png)

> Then search for `Korge` and click the `Install` green button. That will suggest you to restart the IDE. Do so.

![](/korge/setup/korge_plugin.png)

> After that, you should see the Korge menu when opening a project.
> Depending on the version you will see `Korge` it in the main menu or in the `Tools -> Korge` menu.

![](/korge/setup/korge_plugin_menu.png)

> Korge will work on projects that include `korge-core` artifact.

### Supported Artifacts

* `com.soywiz:korge:$korVersion`
* `com.soywiz:korge-ext-swf:$korVersion`
* `com.soywiz:korge-ext-particle:$korVersion`
* `com.soywiz:korge-ext-spriter:$korVersion`
* `com.soywiz:korge-ext-tiled:$korVersion`
* `com.soywiz:korge-ext-lipsync:$korVersion`
Binary file added docs/@old/korge/setup/korge_plugin.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/@old/korge/setup/korge_plugin_menu.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/@old/korge/setup/plugins.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions docs/CNAME
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
docs.korge.org
3 changes: 3 additions & 0 deletions docs/Gemfile.old
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
source 'https://rubygems.org'

gem 'jekyll-redirect-from'
21 changes: 21 additions & 0 deletions docs/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2017 Carlos Ballesteros Velasco

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
24 changes: 24 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# docs.korge.org
This is the offical documentation of the framework Korlibs.
Contributions in every way are welcome.

To launch the documentation locally on your PC there are 2 options:


## Option 1: [Install jekyll](https://jekyllrb.com/docs/installation/)

Then execute `jekyll s`

## Option 2: [install docker](https://docs.docker.com/get-docker/)

Then execute `./jekyll.sh` on linux or `jekyll2.bat` on Windows

## Advices

To simplify image illustration and editing. I recommend:

* Snagit - Configured with `cmd+shift+2` on MacOS
* After creating and editing, you can press `cmd+c` to copy and use the Paste Images into Markdown plugin to create an image
* Webstorm
* [Paste Images into Markdown Webstorm plugin](https://github.com/holgerbrandl/pasteimages)

28 changes: 28 additions & 0 deletions docs/_config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
title: Korlibs
email: soywiz@gmail.com
description: Modern Kotlin Common Libraries for Full Stack development
analytics_id: G-KV32JER3MJ
exclude:
- ".gradle"
- ".idea"
- ".sass-cache"
- ".vscode"
- "@old"
baseurl: ""
url: "https://korlibs.soywiz.com"
doc_base_url: https://github.com/korlibs/korlibs.github.io
blog_url: ""
project_url: https://github.com/korlibs
google_search_id: 001447907640164080602:ej0h0w0ufr0
github_username: korlibs
# DISQUS is super intrusive lately
#disqus_id: "korlibs-documentation"
markdown: kramdown
kramdown:
syntax_highlighter_opts:
disable : true
sass:
sass_dir: css
plugins:
#- jekyll-redirect-from
#- hook-add-last-modified-date
18 changes: 18 additions & 0 deletions docs/_data/versions.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
kds: 4.0.2
kbignum: 4.0.2
kmem: 4.0.2
klogger: 4.0.2
korinject: 4.0.2
krypto: 4.0.2
klock: 4.0.2
korio: 4.0.2
korte: 4.0.2
korma: 4.0.2
korim: 4.0.2
korau: 4.0.2
korgw: 4.0.2
korge: 4.0.2
korgeplugin: 4.0.2
gradle: 7.1.1
coroutines: 1.7.2
kotlin: 1.7.21
26 changes: 26 additions & 0 deletions docs/_includes/analytics-privacy.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<div style="padding:1em;">
<h1>Privacy Policy: Google Analytics Cookies</h1>

<p>This Privacy Policy outlines how our website uses Google Analytics cookies in compliance with the General Data Protection Regulation (GDPR) and other relevant legislations. By using our website, you consent to the collection and processing of your personal data as described in this policy.</p>

<h2>What are Google Analytics Cookies?</h2>
<p>Google Analytics is a web analytics service provided by Google, Inc. that helps us analyze how users interact with our website. Google Analytics uses cookies, which are small text files stored on your device when you visit our website. These cookies contain information about your visit, such as the pages you visited and the duration of your visit.</p>

<h2>How do we use Google Analytics Cookies?</h2>
<p>We use Google Analytics cookies to analyze user behavior on our website, such as which pages are visited most frequently and which links are clicked on the most. This information helps us improve our website and make it more user-friendly. We do not use Google Analytics cookies to collect personally identifiable information.</p>

<h2>What information is collected?</h2>
<p>Google Analytics cookies collect non-personally identifiable information, such as your IP address, browser type, and operating system. This information is used to analyze user behavior and is not shared with third parties. Google Analytics cookies do not collect personally identifiable information such as your name, address, or email address.</p>

<h2>How can I manage Google Analytics Cookies?</h2>
<p>You can opt-out of Google Analytics cookies by installing the Google Analytics Opt-out Browser Add-on, which is available at https://tools.google.com/dlpage/gaoptout. Alternatively, you can disable cookies in your browser settings, although this may affect your ability to use our website.</p>

<h2>Data Security</h2>
<p>We take the security of your personal data seriously and have implemented measures to protect against unauthorized access, loss, or alteration of your personal data. However, no data transmission over the internet can be guaranteed to be completely secure, and we cannot guarantee the security of your personal data transmitted to our website.</p>

<h2>Changes to our Privacy Policy</h2>
<p>We may update this Privacy Policy from time to time, and we encourage you to review it regularly for any changes. If we make any material changes, we will notify you by email or by posting a notice on our website.</p>

<h2>Contact Us</h2>
<p>If you have any questions or concerns about this Privacy Policy, please contact us at @soywiz <a href="https://discord.korge.org/">https://discord.korge.org/</a>.</p>
</div>
Loading