index.html 39 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065
  1. <!DOCTYPE html>
  2. <html lang="en-us">
  3. <head>
  4. <meta name="generator" content="Hugo 0.104.2" />
  5. <title>jMonkeyEngine </title>
  6. <meta name="viewport" content="width=device-width,minimum-scale=1">
  7. <meta name="description"
  8. content="jMonkeyEngine is a modern developer friendly game engine written primarily in Java. ">
  9. <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
  10. <link rel="stylesheet" href="/css/style.css">
  11. <meta name="twitter:card" content="summary"/>
  12. <meta name="twitter:title" content="jMonkeyEngine"/>
  13. <meta name="twitter:description" content=""/>
  14. <meta property="og:title" content="jMonkeyEngine" />
  15. <meta property="og:description" content="" />
  16. <meta property="og:type" content="website" />
  17. <meta property="og:url" content="https://jmonkeyengine.org/" />
  18. <meta itemprop="name" content="jMonkeyEngine">
  19. <meta itemprop="description" content="">
  20. <script src="/js/old-browser.js"></script>
  21. <link rel="stylesheet" href="/css/old-browser.css">
  22. <script src="/highlight/highlight.pack.js"></script>
  23. <script
  24. src="//cdnjs.cloudflare.com/ajax/libs/highlightjs-line-numbers.js/2.8.0/highlightjs-line-numbers.min.js"></script>
  25. <link rel="stylesheet" href="/highlight/styles/railscasts.css">
  26. <script type="text/javascript">
  27. hljs.initHighlightingOnLoad();
  28. hljs.initLineNumbersOnLoad();
  29. </script>
  30. <script src="/js/utils.js"></script>
  31. <script src="/js/showcase.js"></script>
  32. <script type="module" src="/js/Main.js"></script>
  33. <script src="https://cdnjs.cloudflare.com/ajax/libs/later/1.2.0/later.min.js" integrity="sha512-4OyNDMl5KLKjS8F1ImVwUvmthM8HkXbR6vMafCmT5zBTd9I/sA3z3zM0JLBosHW6/3K2jq2RoBo/eTUNS2hOGA==" crossorigin="anonymous"></script>
  34. <script src="/js/maintenance/maintenance.js"></script>
  35. <link rel="stylesheet" href="/js/maintenance/maintenance.css">
  36. <script src="/js/christmas/Christmas.js"></script>
  37. <script>
  38. Christmas.init(
  39. "https://jmonkeyengine.org/js/christmas/",
  40. ["figure.githubUser img", 'img.avatar', "#showcase button"],
  41. [
  42. {
  43. type: "attribute",
  44. value: "src",
  45. transform:function(src){
  46. if(src.startsWith("/user_avatar/hub.jmonkeyengine.org/")) {
  47. return src.substring("/user_avatar/hub.jmonkeyengine.org/".length).split("/")[0];
  48. }
  49. return src;
  50. }
  51. },
  52. {
  53. type: "attribute",
  54. value: "title"
  55. },
  56. {
  57. type: "text"
  58. }
  59. ],
  60. ["header img.avatar"]
  61. );
  62. </script>
  63. </head>
  64. <body>
  65. <header> <nav class="responsiveWidth " id="topmenu">
  66. <div class="expandable">
  67. <a href="https://jmonkeyengine.org/" alt-href="https://jmonkeyengine.org/tags,https://jmonkeyengine.org/authors,https://jmonkeyengine.org/devlog,https://jmonkeyengine.org/blog,,https://jmonkeyengine.org/communitylog">
  68. <button class="genericCl responsiveIcon expandable ">
  69. <i class="fas fa-home"></i> <span>Home</span>
  70. </button>
  71. </a>
  72. <a href="https://jmonkeyengine.org/tags/showcase" alt-href="https://jmonkeyengine.org/showcase">
  73. <button class="genericCl responsiveIcon expandable ">
  74. <i class="fas fa-images"></i> <span>Showcase</span>
  75. </button>
  76. </a>
  77. <a href="https://hub.jmonkeyengine.org">
  78. <button class="genericCl responsiveIcon expandable ">
  79. <i class="fab fa-discourse"></i> <span>Discussions</span>
  80. </button>
  81. </a>
  82. <a href="https://library.jmonkeyengine.org" >
  83. <button class="genericCl responsiveIcon expandable ">
  84. <i class="fas fa-puzzle-piece"></i> <span>Library</span>
  85. </button>
  86. </a>
  87. <a href="https://jmonkeyengine.org/docs">
  88. <button class="genericCl responsiveIcon expandable ">
  89. <i class="fas fa-book"></i> <span>Docs</span>
  90. </button>
  91. </a>
  92. <a href="https://jmonkeyengine.org/license">
  93. <button class="genericCl responsiveIcon expandable toggleable toggledOffPortrait">
  94. <i class="fas fa-balance-scale-right"></i> <span>License</span>
  95. </button>
  96. </a>
  97. </div>
  98. <div class="toggleable toggledOffPortrait expandable">
  99. <a href="https://github.com/jMonkeyEngine/jmonkeyengine" rel='noopener noreferrer' target="_blank">
  100. <button class="icon toggleable toggledOffPortrait codeCl expandable " title="Github">
  101. <i class="fab fa-github-square"></i> <span>Github</span>
  102. </button>
  103. </a>
  104. <a href="https://twitter.com/jmonkeyengine" rel='noopener noreferrer' target="_blank">
  105. <button class="icon twitterCl toggleable toggledOffPortrait expandable " title="Follow on Twitter">
  106. <i class="fab fa-twitter"></i> <span>Twitter</span>
  107. </button>
  108. </a>
  109. <a href="https://www.youtube.com/channel/UC-Fs3R5Q6wW_XYspOXGZgPw" rel='noopener noreferrer'
  110. target="_blank">
  111. <button class="icon youtubeCl toggleable toggledOffPortrait expandable " title="Follow on Youtube">
  112. <i class="fab fa-youtube"></i> <span>Youtube</span>
  113. </button>
  114. </a>
  115. <a href="https://discord.gg/Rv8sfVu" rel='noopener noreferrer' target="_blank">
  116. <button class="icon discordCl toggleable toggledOffPortrait expandable " title="Discord">
  117. <i class="fab fa-discord"></i> <span>Discord</span>
  118. </button>
  119. </a>
  120. <a href="https://jmonkeyengine.org/donate" >
  121. <button class="icon donateCl toggleable toggledOffPortrait expandable " title="Donate">
  122. <i class="fas fa-donate"></i> <span>Donate!</span>
  123. </button>
  124. </a>
  125. </div>
  126. </nav>
  127. <script>
  128. !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.stringSimilarity=e():t.stringSimilarity=e()}(self,(function(){return t={138:t=>{function e(t,e){if((t=t.replace(/\s+/g,""))===(e=e.replace(/\s+/g,"")))return 1;if(t.length<2||e.length<2)return 0;let r=new Map;for(let e=0;e<t.length-1;e++){const n=t.substring(e,e+2),o=r.has(n)?r.get(n)+1:1;r.set(n,o)}let n=0;for(let t=0;t<e.length-1;t++){const o=e.substring(t,t+2),s=r.has(o)?r.get(o):0;s>0&&(r.set(o,s-1),n++)}return 2*n/(t.length+e.length-2)}t.exports={compareTwoStrings:e,findBestMatch:function(t,r){if(!function(t,e){return"string"==typeof t&&!!Array.isArray(e)&&!!e.length&&!e.find((function(t){return"string"!=typeof t}))}(t,r))throw new Error("Bad arguments: First argument should be a string, second should be an array of strings");const n=[];let o=0;for(let s=0;s<r.length;s++){const i=r[s],f=e(t,i);n.push({target:i,rating:f}),f>n[o].rating&&(o=s)}return{ratings:n,bestMatch:n[o],bestMatchIndex:o}}}}},e={},function r(n){if(e[n])return e[n].exports;var o=e[n]={exports:{}};return t[n](o,o.exports,r),o.exports}(138);var t,e}));
  129. window.initJmeMenu=function () {
  130. const selectionClass= window.selectedTopMenuClass || "highlightedCl";
  131. const topmenu = document.querySelector('#topmenu');
  132. if (window.location.href.startsWith("http://localhost:1313")) {
  133. for (const a of topmenu.querySelectorAll("a")) {
  134. a.href = a.href.replace("https://jmonkeyengine.org", "http://localhost:1313");
  135. }
  136. }
  137. const likelyScore=[];
  138. for (const a of topmenu.querySelectorAll("a")) {
  139. const pageUrl=window.location.href.endsWith("/")?window.location.href.substring(0,window.location.href.length-1):window.location.href;
  140. const process = (linkUrls) => {
  141. if(!linkUrls)return;
  142. for(let linkUrl of linkUrls){
  143. if (linkUrl != null) {
  144. if (window.location.href.startsWith("http://localhost:1313")) {
  145. linkUrl = linkUrl.replace("https://jmonkeyengine.org", "http://localhost:1313");
  146. }
  147. if (linkUrl.endsWith("/")) {
  148. linkUrl = linkUrl.substring(0, linkUrl.length - 1);
  149. }
  150. const score = stringSimilarity.compareTwoStrings(linkUrl, pageUrl);
  151. likelyScore.push(
  152. {
  153. score: score,
  154. el: a.querySelector("button")
  155. }
  156. );
  157. }
  158. }
  159. }
  160. process([a.href]);
  161. process(a.getAttribute("alt-href")?a.getAttribute("alt-href").split(","):undefined);
  162. }
  163. likelyScore.sort((a, b) => b.score - a.score);
  164. likelyScore.forEach(el=>el.el.classList.remove(selectionClass));
  165. likelyScore[0].el.classList.add(selectionClass);
  166. };
  167. document.addEventListener('DOMContentLoaded', function(){
  168. window.initJmeMenu();
  169. });
  170. </script>
  171. <div id="siteTitle" class="list hlist responsiveWidth">
  172. <div id="logo">
  173. <a href="/">
  174. <img src="/images/jme-logo.png" />
  175. </a>
  176. <i class="toggleNavOnPortraitButton fas fa-bars" toggle="topmenu"></i>
  177. </div>
  178. <div id="contributionsBanner">
  179. <div> <i class="fas fa-donate"></i>
  180. Backed by:
  181. <a rel='noopener nofollow noreferrer' target="_blank" id="backerName">The Community</a>
  182. <a rel='noopener nofollow noreferrer' target="_blank"
  183. href="https://opencollective.com/jmonkeyengine#section-contributors"> and more...</a>
  184. </div>
  185. <div>
  186. <i class="fab fa-github-alt"></i>
  187. Contributed by:
  188. <a rel='noopener nofollow noreferrer' target="_blank" id="contributorName">The Community</a>
  189. <a rel='noopener nofollow noreferrer' target="_blank"
  190. href="https://github.com/jMonkeyEngine/jmonkeyengine/graphs/contributors">and more...</a>
  191. </div>
  192. </div>
  193. </div>
  194. </header>
  195. <main>
  196. <section id="showcase" mode="banner">
  197. <i id="playButton" class=" fas fa-play"></i>
  198. <div class="showcaseElement" style='display: block '>
  199. <div class="cover blur" style ="background-image: url('/images/showcase/ls_frontier/5.jpg'); " ></div>
  200. <div class="cover" style ="background-image: url('/images/showcase/ls_frontier/5.jpg'); " ></div>
  201. </div>
  202. <div class="showcaseElement" style='display: none '>
  203. <div class="cover blur" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/10.jpg'); " ></div>
  204. <div class="cover" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/10.jpg'); " ></div>
  205. </div>
  206. <div class="showcaseElement" style='display: none '>
  207. <div class="cover blur" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/9.jpg'); " ></div>
  208. <div class="cover" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/9.jpg'); " ></div>
  209. </div>
  210. <div class="showcaseElement" style='display: none '>
  211. <div class="cover blur" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/4.jpg'); " ></div>
  212. <div class="cover" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/4.jpg'); " ></div>
  213. </div>
  214. <div class="showcaseElement" style='display: none '>
  215. <div class="cover blur" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/1.jpg'); " ></div>
  216. <div class="cover" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/1.jpg'); " ></div>
  217. </div>
  218. <div class="showcaseElement" style='display: none '>
  219. <div class="cover blur" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/11.jpg'); " ></div>
  220. <div class="cover" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/11.jpg'); " ></div>
  221. </div>
  222. <div class="showcaseElement" style='display: none '>
  223. <div class="cover blur" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/7.jpg'); " ></div>
  224. <div class="cover" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/7.jpg'); " ></div>
  225. </div>
  226. <div class="showcaseElement" style='display: none '>
  227. <div class="cover blur" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/6.jpg'); " ></div>
  228. <div class="cover" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/6.jpg'); " ></div>
  229. </div>
  230. <video class="showcaseElement cover" style='display: none ' preload="none"
  231. class="cover">
  232. <source src="https://steamcdn-a.akamaihd.net/steam/apps/256676876/movie_max.webm" type="video/webm">
  233. </video>
  234. </div>
  235. <div class="showcaseElement" style='display: none '>
  236. <div class="cover blur" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/8.jpg'); " ></div>
  237. <div class="cover" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/8.jpg'); " ></div>
  238. </div>
  239. <div class="showcaseElement" style='display: none '>
  240. <div class="cover blur" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/3.jpg'); " ></div>
  241. <div class="cover" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/3.jpg'); " ></div>
  242. </div>
  243. <div class="showcaseElement" style='display: none '>
  244. <div class="cover blur" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/2.jpg'); " ></div>
  245. <div class="cover" lazy="true" lazy-style ="background-image: url('/images/showcase/ls_frontier/2.jpg'); " ></div>
  246. </div>
  247. <div class="responsiveWidth" id="engineDescription">
  248. jMonkeyEngine is a modern developer friendly game engine written primarily in Java.
  249. <br />
  250. Its minimalistic and code first approach makes it perfect for developers who want the support of a game engine
  251. while retaining full control over their code with the ability to extend and adapt the engine to their workflow.
  252. <br />
  253. <br />
  254. <br />
  255. <a href="/start/"><button id="startbtn" class="highlightedCl" ><i class="fas fa-rocket"></i> Get Started </button></a>
  256. <a href="/#features" title="overview"><button id="startbtn" class="highlightedCl"><i class="fas fa-question-circle" style="padding:0"></i></button></a>
  257. <br />
  258. <br />
  259. </div>
  260. <div class="responsiveWidth" >
  261. <div id="gameDescription" >
  262. <h2><i class="far fa-images" ></i> Lightspeed Frontier powered by jMonkeyEngine</h2>
  263. Leave everything behind and try your hand at captaining a ship on the frontier of the galaxy. Customize it piece by piece to tackle whatever adventures await you. Take on crime lords and space pirates …
  264. <br />
  265. <a class="readMore" href="/showcase/ls_frontier/#showcase">See game page </a>
  266. </div>
  267. </div>
  268. </section>
  269. <br/>
  270. <section class="message list vlist">
  271. <div>
  272. <blockquote class="list vlist responsive">
  273. <span id="backerMessage">-</span>
  274. <i><a rel='noopener nofollow noreferrer' target="_blank" id="backerMessageName">-</a> </i>
  275. </blockquote>
  276. <a href="https://opencollective.com/jmonkeyengine">Become a
  277. backer and leave a message...</a>
  278. </div>
  279. </section>
  280. <br/>
  281. <section class="list vlist responsive responsiveWidth">
  282. <article>
  283. <h1 >
  284. <a href="/devlog/jme380/">
  285. <i class="fas fa-code useless"></i>
  286. JMonkeyEngine 3.8.0-stable release</a>
  287. </h1>
  288. <div class="content" >
  289. <span >
  290. We are proud to announce the release of version 3.8.0-stable of the JMonkeyEngine game engine.
  291. The new release is featured in version v3.8.0-stable-sdk1 of our Software Development Kit.
  292. Pre-compiled libraries are available from the Maven Central repository under the &ldquo;org.jmonkeyengine&rdquo; groupID.
  293. Release notes are online at https://github.com/jMonkeyEngine/jmonkeyengine/releases/tag/v3.8.0-stable
  294. Development of the next release (v3.9) is already underway.
  295. For the latest news and discussion of JMonkeyEngine software development, visit the Development category at the JME Community Hub/Forum. …
  296. <a class="more readMore" href="/devlog/jme380/">Read
  297. More... </a>
  298. </span>
  299. <nav>
  300. <ul class="tags smaller">
  301. <h3 class="tags">Tags</h3>
  302. <li><a class="devlog" href="/tags/devlog"><i class="fas fa-hashtag"></i>devlog</a></li>
  303. <li><a class="release" href="/tags/release"><i class="fas fa-hashtag"></i>release</a></li>
  304. <li><a class="blog" href="/tags/blog"><i class="fas fa-hashtag"></i>blog</a></li>
  305. </ul>
  306. <ul class="authors smaller">
  307. <h3 class="authors">Authors</h3>
  308. <li><a class="yarnmcdonuts" href="/authors/yarnmcdonuts"><i class="fas fa-at"></i>yaRnMcDonuts</a></li>
  309. </ul>
  310. <ul class="postedDate smaller">
  311. <h3 class="postedDate">Date</h3>
  312. <li><time datetime="2025-05-05 08:00:00 &#43;0000 UTC"><i class="fas fa-calendar"></i>05 May 2025</time> </li>
  313. </ul>
  314. <ul class="share">
  315. <h3 class="share">Share</h3>
  316. <li>
  317. <button><a href="https://twitter.com/share?ref_src=twsrc%5Etfw&text=We%20are%20proud%20to%20announce%20the%20release%20of%20version%203.8.0-stable%20of%20the%20JMonkeyEngine%20game%20engine.%0aThe%20new%20release%20is%20featured%20in%20version%20%e2%80%a6 " >
  318. <i class="fab fa-twitter-square"></i> Share on Twitter</a></button></li>
  319. </ul>
  320. </nav>
  321. </div>
  322. </article>
  323. </section>
  324. <a class="more responsiveWidth" href="tags/devlog">More development updates...</a>
  325. <section class="list vlist responsive responsiveWidth">
  326. <article>
  327. <h1 >
  328. <a href="/communitylog/new-services/">
  329. <i class="fas fa-bullhorn useless"></i>
  330. jMonkey Initializer, Library and p2p donations</a>
  331. </h1>
  332. <div class="content" >
  333. <span >
  334. Hello jMonkey community, I bring you some exciting news:
  335. jMonkeyEngine Initializer Thanks to @richtea we now have an awesome web tool that simplifies the creation of jme projects for both new and advanced users:
  336. The jMonkeyEngine Initializer.
  337. This tool is found in the Get Started page and assists in the creation of new multi-platform gradle projects.
  338. Library: the new Store We are moving what is currently referred as &ldquo;jmonkey store&rdquo; to a new solution called &ldquo;jmonkey library&rdquo;. …
  339. <a class="more readMore" href="/communitylog/new-services/">Read
  340. More... </a>
  341. </span>
  342. <nav>
  343. <ul class="tags smaller">
  344. <h3 class="tags">Tags</h3>
  345. <li><a class="communitylog" href="/tags/communitylog"><i class="fas fa-hashtag"></i>communitylog</a></li>
  346. <li><a class="bitcoin" href="/tags/bitcoin"><i class="fas fa-hashtag"></i>bitcoin</a></li>
  347. <li><a class="initializer" href="/tags/initializer"><i class="fas fa-hashtag"></i>initializer</a></li>
  348. <li><a class="library" href="/tags/library"><i class="fas fa-hashtag"></i>library</a></li>
  349. <li><a class="blog" href="/tags/blog"><i class="fas fa-hashtag"></i>blog</a></li>
  350. </ul>
  351. <ul class="authors smaller">
  352. <h3 class="authors">Authors</h3>
  353. <li><a class="riccardobl" href="/authors/riccardobl"><i class="fas fa-at"></i>riccardobl</a></li>
  354. </ul>
  355. <ul class="postedDate smaller">
  356. <h3 class="postedDate">Date</h3>
  357. <li><time datetime="2022-07-10 08:00:00 &#43;0000 UTC"><i class="fas fa-calendar"></i>10 July 2022</time> </li>
  358. </ul>
  359. <ul class="share">
  360. <h3 class="share">Share</h3>
  361. <li>
  362. <button><a href="https://twitter.com/share?ref_src=twsrc%5Etfw&text=Hello%20jMonkey%20community%2c%20I%20bring%20you%20some%20exciting%20news%3a%0ajMonkeyEngine%20Initializer%20Thanks%20to%20%40richtea%20we%20now%20have%20an%20awesome%20web%20tool%20that%20simplifies%20%e2%80%a6 " >
  363. <i class="fab fa-twitter-square"></i> Share on Twitter</a></button></li>
  364. </ul>
  365. </nav>
  366. </div>
  367. </article>
  368. </section>
  369. <a class="more responsiveWidth" href="tags/communitylog">More community updates...</a>
  370. <section class="list vlist responsive responsiveWidth">
  371. <article>
  372. <h1 >
  373. <a href="/blog/macos-cloud-renting-and-developmentmacos-cloud-renting-and-development/">
  374. <i class="fas fa-paragraph useless"></i>
  375. MacOS renting and development in the cloud</a>
  376. </h1>
  377. <div class="content" >
  378. <span >
  379. MacOS cloud renting has started to proliferate with the new Apple Silicon M1 chip and it turned out to be a pretty decent way to test graphical applications on MacOS without buying apple&rsquo;s pricey hardware or resorting to hackish ports and vms of questionable legality.
  380. I am reporting here the procedure to quickly get a MacOS M1 cloud service up and running for testing jmonkey applications without too much hassle. …
  381. <a class="more readMore" href="/blog/macos-cloud-renting-and-developmentmacos-cloud-renting-and-development/">Read
  382. More... </a>
  383. </span>
  384. <nav>
  385. <ul class="tags smaller">
  386. <h3 class="tags">Tags</h3>
  387. <li><a class="tutorials" href="/tags/tutorials"><i class="fas fa-hashtag"></i>tutorials</a></li>
  388. <li><a class="blog" href="/tags/blog"><i class="fas fa-hashtag"></i>blog</a></li>
  389. <li><a class="misc" href="/tags/misc"><i class="fas fa-hashtag"></i>misc</a></li>
  390. </ul>
  391. <ul class="authors smaller">
  392. <h3 class="authors">Authors</h3>
  393. <li><a class="riccardobl" href="/authors/riccardobl"><i class="fas fa-at"></i>riccardobl</a></li>
  394. </ul>
  395. <ul class="postedDate smaller">
  396. <h3 class="postedDate">Date</h3>
  397. <li><time datetime="2022-01-19 18:00:00 &#43;0000 UTC"><i class="fas fa-calendar"></i>19 January 2022</time> </li>
  398. </ul>
  399. <ul class="share">
  400. <h3 class="share">Share</h3>
  401. <li>
  402. <button><a href="https://twitter.com/share?ref_src=twsrc%5Etfw&text=MacOS%20cloud%20renting%20has%20started%20to%20proliferate%20with%20the%20new%20Apple%20Silicon%20M1%20chip%20and%20it%20turned%20out%20to%20be%20a%20pretty%20decent%20way%20to%20test%20graphical%20%e2%80%a6 " >
  403. <i class="fab fa-twitter-square"></i> Share on Twitter</a></button></li>
  404. </ul>
  405. </nav>
  406. </div>
  407. </article>
  408. </section>
  409. <ul class="more responsiveWidth">
  410. <li>
  411. <a href="/blog/interview-adibarda/">
  412. Sgold interviews Adi Barda
  413. ...
  414. </a>
  415. </li>
  416. <li>
  417. <a href="/blog/interview-danielp/">
  418. Sgold interviews Daniel Perano
  419. ...
  420. </a>
  421. </li>
  422. <li>
  423. <a href="/blog/interview-jayfella/">
  424. Sgold interviews Jayfella
  425. ...
  426. </a>
  427. </li>
  428. <li><a href="tags/blog">More from the blog...</a></li>
  429. </ul>
  430. <h1 id="features">jMonkeyEngine</h1>
  431. <section class="list hlist responsive responsiveWidth features">
  432. <article>
  433. <h1><i class="fas fa-shapes"></i> Powerful Graphics</h1>
  434. <div class="content">
  435. <span>
  436. jMonkeyEngine is only one level of abstraction away from OpenGL.
  437. <br />
  438. The engine exposes modern opengl capabilities and benefits from high performances due to its low level of abstraction.
  439. <br />
  440. Notable features include:
  441. <ul>
  442. <li>Physically Based Rendering</li>
  443. <li>Singlepass Lighting</li>
  444. <li>Instanced Rendering</li>
  445. <li>Multitarget Rendering</li>
  446. <li>Tessellation</li>
  447. <li>Geometry Shaders</li>
  448. <li>Offscreen Rendering</li>
  449. <li>sRGB support with linearization</li>
  450. <li>Floating point textures</li>
  451. <li>Tone Mapping (HDR)</li>
  452. <li>Steep Parallax</li>
  453. <li>Shadows</li>
  454. </ul>
  455. <a href="https://wiki.jmonkeyengine.org/docs/3.3/documentation.html"> And more...</a>
  456. </span>
  457. </div>
  458. </article>
  459. <article>
  460. <h1><i class="fas fa-weight-hanging"></i> Physics</h1>
  461. <div class="content">
  462. <span>
  463. jMonkeyEngine supports multiple physics solutions
  464. <ul>
  465. <li><a href="https://wiki.jmonkeyengine.org/docs/3.3/physics/physics.html">jBullet</a>: java porting of Bullet Engine </li>
  466. <li><a href="https://store.jmonkeyengine.org/38308161-c3cf-4e23-8754-528ca8387c11">Minie <i class="fas fa-puzzle-piece" title="Available as Plugin or community contribution"></i></a>: A binding to Bullet Engine, with support for rigidbody and softbody physics</li>
  467. </ul>
  468. </span>
  469. </div>
  470. </article>
  471. <article>
  472. <h1><i class="fas fa-network-wired"></i> Networking</h1>
  473. <div class="content">
  474. <span>
  475. There are multiple options to write netcode in jMonkeyEngine:
  476. <ul>
  477. <li><a href="https://wiki.jmonkeyengine.org/docs/3.3/networking/networking.html">Spidermonkey</a>: A feature rich java
  478. client-server networking API that uses TCP and UDP packets. With support for RMI and Object Serialization.
  479. </li>
  480. <li><a href="https://github.com/Simsilica/SimEthereal">SimEthereal <i class="fas fa-puzzle-piece" title="Available as Plugin or community contribution"></i></a>:
  481. A high performance library for real-time networked object synching</li>
  482. <li><a href="https://store.jmonkeyengine.org/929c156b-3b0e-42c7-8474-f6c58ed8a1d5">Monkey Netty <i class="fas fa-puzzle-piece" title="Available as Plugin or community contribution"></i></a>:
  483. A implementation of a server-client system using Netty.IO that utilizes both TCP and UDP.</li>
  484. </ul>
  485. </span>
  486. </div>
  487. </article>
  488. </section>
  489. <section class="list hlist responsive responsiveWidth features">
  490. <article>
  491. <h1><i class="fas fa-mouse-pointer"></i> GUI</h1>
  492. <div class="content">
  493. <span>
  494. In jMonkeyEngine there are several established choices for GUIs:
  495. <ul>
  496. <li><a href="https://github.com/jMonkeyEngine-Contributions/Lemur">Lemur <i class="fas fa-puzzle-piece" title="Available as Plugin or community contribution"></i></a>: a modular library for 2D and 3D interactive guis, with a groovy-based styling language</li>
  497. <li><a href="https://wiki.jmonkeyengine.org/docs/3.3/core/gui/nifty_gui.html">Nifty GUI</a>: a library to build interactive user interfaces with support for xml layouts. </li>
  498. <li><a href="https://github.com/riccardobl/jme-igui">IGUI <i class="fas fa-puzzle-piece" title="Available as Plugin or community contribution"></i></a>: a minimalistic immediate GUI with minimal input handling</li>
  499. </ul>
  500. </span>
  501. </div>
  502. </article>
  503. <article>
  504. <h1><i class="fas fa-fire"></i> Postprocessing</h1>
  505. <div class="content">
  506. <span>
  507. jMonkeyEngine supports postprocessing out of the box and comes with several filters ready to use.
  508. <br />
  509. Such as:
  510. <ul>
  511. <li>Bloom</li>
  512. <li>FXAA</li>
  513. <li>Cartoon Edges</li>
  514. <li>Light Scattering (GOD rays)</li>
  515. <li>SSAO</li>
  516. <li>Tone Mapping</li>
  517. <li><a href="https://store.jmonkeyengine.org/c907a4f2-631f-40fc-934b-3f70ccadb3ce">Volumetric Light <i class="fas fa-puzzle-piece" title="Available as Plugin or community contribution"></i></a></li>
  518. </ul>
  519. <a href="https://wiki.jmonkeyengine.org/docs/3.3/core/effect/effects_overview.html">And more...</a>
  520. </span>
  521. </div>
  522. </article>
  523. <article>
  524. <h1><i class="fas fa-volume-up"></i> 3D Audio</h1>
  525. <div class="content">
  526. <span>
  527. jMonkeyEngine supports 3D audio with
  528. <ul>
  529. <li><a href="https://wiki.jmonkeyengine.org/docs/3.3/core/audio/audio.html">OpenAL</a>: Cross platform 3D audio. With basic support for positional sound and precomputed reverb.</li>
  530. <li><a href="https://github.com/jmePhonon/jmePhonon">jmePhonon <i class="fas fa-puzzle-piece" title="Available as Plugin or community contribution"></i></a>: Binding to SteamAudio for immersive sounds. With support for HRTF, occlusion, realtime reverberance and more... (pc only)</li>
  531. </ul>
  532. </span>
  533. </div>
  534. </article>
  535. </section>
  536. <section class="list hlist responsive responsiveWidth features">
  537. <article>
  538. <h1><i class="fas fa-tree"></i> Terrain</h1>
  539. <div class="content">
  540. <span>
  541. There are several libraries and frameworks that aid in the creation of terrains in jMonkeyEngine.
  542. <br />
  543. Notable choices are:
  544. <ul>
  545. <li><a href="https://wiki.jmonkeyengine.org/docs/3.3/core/terrain/terrain.html">TerraMonkey</a>: An high performance editable heightmap based terrain with autogenerated LOD and triplanar mapping.</li>
  546. <li><a href="https://store.jmonkeyengine.org/1a85df6f-4bb6-4c85-9e77-b5119662ed54">Blocks <i class="fas fa-puzzle-piece" title="Available as Plugin or community contribution"></i></a>: A voxel engine with support for custom shapes, physics and endless terrain.</li>
  547. <li><a href="https://github.com/Simsilica/IsoSurface">IsoSurface <i class="fas fa-puzzle-piece" title="Available as Plugin or community contribution"></i></a>: An isosurface terrain</li>
  548. <li><a href="https://github.com/Simsilica/SimArboreal">SimArboreal <i class="fas fa-puzzle-piece" title="Available as Plugin or community contribution"></i></a>: A library to generate procedural trees</li>
  549. <li><a href="https://wiki.jmonkeyengine.org/docs/3.3/core/effect/post-processor_water.html">SeaMonkey</a>: Postprocessing filter that simulates water and underwater effects</li>
  550. </ul>
  551. </span>
  552. </div>
  553. </article>
  554. <article>
  555. <h1><i class="fas fa-magic"></i> Particles</h1>
  556. <div class="content">
  557. <span>
  558. jMonkeyEngine comes with particles capabilities in the core and multiple advanced thirdparty alternatives:
  559. <ul>
  560. <li><a href="https://wiki.jmonkeyengine.org/docs/3.3/core/effect/particle_emitters.html">jMonkey Particles</a>: Simple and fast particles with support for point sprites and basic emitter logic</li>
  561. <li><a href="https://store.jmonkeyengine.org/189b56af-a1be-4036-8ac7-2b62a94935ff">Particle Monkey <i class="fas fa-puzzle-piece" title="Available as Plugin or community contribution"></i></a>: A modern particle system with better artistic controls</li>
  562. <li><a href="https://github.com/riccardobl/jme-effekseerNative">jme-EffekseerNative <i class="fas fa-puzzle-piece" title="Available as Plugin or community contribution"></i></a>: Binding to the Effekseer particles runtime.</li>
  563. </ul>
  564. </span>
  565. </div>
  566. </article>
  567. <article>
  568. <h1><i class="fas fa-star-of-life"></i> Multy Paradigm </h1>
  569. <div class="content">
  570. <span>
  571. Thanks to its flexibility, jMonkeyEngine can be used with different paradigms:
  572. <ul>
  573. <li><a href="https://wiki.jmonkeyengine.org/docs/3.3/core/scene/control/custom_controls.html">Spatial-Control model</a>: An intuitive model where Spatials are game entities and Controls determine their logic</li>
  574. <li><a href="https://github.com/jMonkeyEngine-Contributions/zay-es/wiki">Zay-ES <i class="fas fa-puzzle-piece" title="Available as Plugin or community contribution"></i></a>: High-performance entity-component-system model (ECS) </li>
  575. </ul>
  576. </span>
  577. </div>
  578. </article>
  579. </section>
  580. <section class="list hlist responsive responsiveWidth features">
  581. <article>
  582. <h1><i class="far fa-comments"></i> By The Community</h1>
  583. <div class="content">
  584. <span>
  585. During the years jMonkeyEngine has received many contributions in form of addons, assets and libraries.
  586. <br />
  587. Recently we launched the <a href="https://store.jmonkeyengine.org">Software Store</a> to collect all of them in a single place.
  588. </span>
  589. </div>
  590. </article>
  591. <article>
  592. <h1><i class="fas fa-vial"></i> For The Developers</h1>
  593. <div class="content">
  594. <span>
  595. Simple, easy to setup, modular and minimalistic in its approach, jMonkeyEngine is made for the developers.
  596. <br />
  597. Its flexibility allows it to be adapted to different workflows and easily extended to support new features.
  598. </span>
  599. </div>
  600. </article>
  601. <article>
  602. <h1><i class="fab fa-osi"></i> Free for everyone </h1>
  603. <div class="content">
  604. <span>
  605. jMonkeyEngine is free and opensource. Released under the permissive <a href="/license">BSD 3-Clause license</a>.
  606. <br />
  607. No splash screens, no fees and no requirement to
  608. mention jMonkeyEngine in your game at all.
  609. </span>
  610. </div>
  611. </article>
  612. </section>
  613. <a class="more responsiveWidth" href="/features">And More ...</a>
  614. <h1>Contribute</h1>
  615. <section id="contribute" class=" list vlist responsive responsiveWidth features">
  616. <article id="code">
  617. <h1 class="codeCl"><i class="fas fa-code"></i> Contribute to the Core</h1>
  618. <div class="content">
  619. <span>
  620. You can contribute to <a href="https://github.com/jMonkeyEngine/jmonkeyengine">jMonkeyEngine</a>
  621. and <a href="https://github.com/jMonkeyEngine">related projects</a>
  622. by fixing open issues, improving and implementing new features.
  623. <br />
  624. Make sure to visit the <a href="https://github.com/jMonkeyEngine/jmonkeyengine/issues">issue tracker</a>
  625. to find open issues and to discuss with the <a href="https://hub.jmonkeyengine.org">community</a>.
  626. </span>
  627. </div>
  628. </article>
  629. <article id="docs">
  630. <h1 class="docsCl"><i class="fas fa-book"></i> Improve the Documentation</h1>
  631. <div class="content">
  632. <span>
  633. Good <a href="/docs">documentation</a> is as important as good code,
  634. we are always looking for help to improve the <a href="https://github.com/jMonkeyEngine/wiki">wiki</a> and document new features.
  635. <br />
  636. Make sure to let us know if you are working on tutorials, books or some other form of learning resource related to jMonkeyEngine, so that we can give it the appropriate exposure.
  637. </span>
  638. </div>
  639. </article>
  640. <article id="bugs">
  641. <h1 class="bugsCl"><i class="fas fa-bug"></i> Find and Report Bugs</h1>
  642. <div class="content">
  643. <span>
  644. If you find an issue or defect in <a href="https://github.com/jMonkeyEngine/jmonkeyengine">jMonkeyEngine</a> and <a href="https://github.com/jMonkeyEngine">related projects</a>
  645. you can submit a report to the <a href="https://github.com/jMonkeyEngine/jmonkeyengine/issues">issue tracker</a>.
  646. <br />
  647. From there we will be able to pinpoint and resolve the issue for everyone.
  648. <br />
  649. If you are unsure if the issue is caused by a misunderstanding or bug in your code, you can ask for an opinion in the <a href="https://hub.jmonkeyengine.org">community hub</a>.
  650. </span>
  651. </div>
  652. </article>
  653. <article id="donate" >
  654. <h1 class="donateCl"><i class="fas fa-donate"></i> Donate to the Project</h1>
  655. <div class="content">
  656. <span>
  657. You can support the project with a monetary contribution.
  658. <br>
  659. Checkout our donation page at <a href="/donate/">jmonkeyengine.org/donate</a> to learn how.
  660. <br />
  661. <i>Backers can leave a message to the community that will be featured in homepage.</i>
  662. </span>
  663. </div>
  664. </article>
  665. </section>
  666. </main>
  667. <footer>
  668. © 2020 jMonkeyEngine.
  669. All other trademarks, logos and featured content are property of their respective owners.
  670. <br />
  671. <a title="Github repo" rel='noopener nofollow noreferrer' target="_blank"
  672. href="https://github.com/jMonkeyEngine/jmonkeyengine-website">
  673. <i class="fab fa-github"></i> Source on Github
  674. </a>
  675. |
  676. <a title="Report issue" rel='noopener nofollow noreferrer' target="_blank"
  677. href="https://github.com/jMonkeyEngine/jmonkeyengine-website/issues">
  678. <i class="fas fa-bug"></i> Report an issue
  679. </a>
  680. <br />
  681. <br />
  682. Website designed and developed by
  683. <a href="https://github.com/riccardobl">Riccardo Balbo</a>
  684. for the jMonkeyEngine's Community.
  685. </footer>
  686. <div id="poweredBy" >
  687. <a rel='noopener nofollow noreferrer' target="_blank" href="https://www.macstadium.com/">
  688. <img src="/images/macstadium-logo.png" />
  689. </a>
  690. <a rel='noopener nofollow noreferrer' target="_blank" href="https://www.java.com/">
  691. <img src="/images/java-logo.png" />
  692. </a>
  693. <a rel='noopener nofollow noreferrer' target="_blank" href="https://opengl.org/">
  694. <img src="/images/opengl-logo.png" />
  695. </a>
  696. </div>
  697. </body>
  698. </html>