Help to familiarize with Minetest graphics engine

For people working on the C++ code.
crazy_baboon
Member
 
Posts: 93
Joined: Sat Oct 17, 2015 10:47

Help to familiarize with Minetest graphics engine

by crazy_baboon » Mon Aug 06, 2018 12:44

Hi folks,

I wanted to get familiar with Minetest graphics engine. Which engine does it use to render the geometries onto the screen?

Thanks
 

User avatar
rubenwardy
Moderator
 
Posts: 5471
Joined: Tue Jun 12, 2012 18:11
Location: United Kingdom
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy
 

crazy_baboon
Member
 
Posts: 93
Joined: Sat Oct 17, 2015 10:47

Re: Help to familiarize with Minetest graphics engine

by crazy_baboon » Wed Aug 08, 2018 09:57

Thanks!

I am interested in implementing dynamic shadows in Minetest, since "BlockMen" won't share his code https://www.youtube.com/watch?v=PBMOG_dTbWo.

I have found that the new SuperTuxKart rendering engine "Antartica" is a serious improvement over standard irrlicht (offers superior lighting and dynamic shadows). However, the code for Antartica is licensed under the GPL3+ and minetest is LGPLv2.1+. Are these licenses compatible, e.g. can I legally take code from SuperTuxKart project and merge it onto Minetest code base?
 

User avatar
rubenwardy
Moderator
 
Posts: 5471
Joined: Tue Jun 12, 2012 18:11
Location: United Kingdom
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

Re: Help to familiarize with Minetest graphics engine

by rubenwardy » Wed Aug 08, 2018 10:37

There's this PR which needs adopting: https://github.com/minetest/minetest/pull/6839

Yes, we can't use the Antarctica engine without relicensing to GPL.
 

crazy_baboon
Member
 
Posts: 93
Joined: Sat Oct 17, 2015 10:47

Re: Help to familiarize with Minetest graphics engine

by crazy_baboon » Wed Aug 08, 2018 18:11

rubenwardy wrote:There's this PR which needs adopting: https://github.com/minetest/minetest/pull/6839


I cannot run this PR. I compiled from the 6839 branch and I get the following error:

Code: Select all
2018-08-08 19:09:15: WARNING[Main]: NodeDefManager: Ignoring CONTENT_IGNORE redefinition
2018-08-08 19:09:15: ERROR[Main]: ModError: Failed to load and run script from /home/pinto/Documents/minetest/bin/../games/minetest_game-master/mods/fireflies/init.lua:
2018-08-08 19:09:15: ERROR[Main]: ..../games/minetest_game-master/mods/fireflies/init.lua:261: attempt to call field 'get_decoration_id' (a nil value)
2018-08-08 19:09:15: ERROR[Main]: stack traceback:
2018-08-08 19:09:15: ERROR[Main]:    ..../games/minetest_game-master/mods/fireflies/init.lua:261: in main chunk
2018-08-08 19:09:15: ERROR[Main]: Check debug.txt for details.


Running Xubuntu 18.04

rubenwardy wrote:Yes, we can't use the Antarctica engine without relicensing to GPL.


Yep, this can be confirmed in https://github.com/supertuxkart/stk-code/issues/2381. Relicensing minetest to GPLv3 is impossible, I am assuming here

Perhaps it would be better to use OGRE3D engine - it's also permissively licensed and fancier than irrlicht https://gamedev.stackexchange.com/questions/5618/ogre-vs-irrlicht. Of course this would probably lead to a monstrous amount of work...
 

User avatar
rubenwardy
Moderator
 
Posts: 5471
Joined: Tue Jun 12, 2012 18:11
Location: United Kingdom
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

Re: Help to familiarize with Minetest graphics engine

by rubenwardy » Wed Aug 08, 2018 18:27

Do git pull --rebase upstream origin master

Where upstream is the main minetest repo
 

User avatar
Krock
Developer
 
Posts: 4106
Joined: Thu Oct 03, 2013 07:48
Location: Switzerland
GitHub: SmallJoker

Re: Help to familiarize with Minetest graphics engine

by Krock » Wed Aug 08, 2018 18:27

crazy_baboon wrote:
Code: Select all
2018-08-08 19:09:15: ERROR[Main]: ..../games/minetest_game-master/mods/fireflies/init.lua:261: attempt to call field 'get_decoration_id' (a nil value)

Apparently you switched to the branch to compile (in order to not rebase) - this means that you'll also have to use minetest_game from mid-2017, which is about the 0.4.16 stable version, in order to get it working properly.

crazy_baboon wrote:Relicensing minetest to GPLv3 is impossible, I am assuming here

Actually that's possible since it's a more protective license, see License compatibility. Freeminer, a dead fork of Minetest, also did this for the entire code base.
Mod Search Engine - Mods by Krock - DuckDuckGo mod search bang: !mtmod <keyword here>
 

User avatar
rubenwardy
Moderator
 
Posts: 5471
Joined: Tue Jun 12, 2012 18:11
Location: United Kingdom
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

Re: Help to familiarize with Minetest graphics engine

by rubenwardy » Wed Aug 08, 2018 18:29

It's a very bad idea though, as it may make making proprietary games and mods illegal
 

crazy_baboon
Member
 
Posts: 93
Joined: Sat Oct 17, 2015 10:47

Re: Help to familiarize with Minetest graphics engine

by crazy_baboon » Thu Aug 16, 2018 14:21

Thanks guys!

I managed to run the shadows pull request. Here's how, for future reference:

Code: Select all
git clone https://github.com/minetest/minetest.git
cd minetest/
git fetch origin pull/6839/head:SHADOWS
git checkout SHADOWS
cmake . -DRUN_IN_PLACE=TRUE
make -j4
cd bin
./minetest


The shadows would be far more interesting if they were actually casted by the sun, which they are not:

Image
 

crazy_baboon
Member
 
Posts: 93
Joined: Sat Oct 17, 2015 10:47

Re: Help to familiarize with Minetest graphics engine

by crazy_baboon » Wed Aug 22, 2018 15:17

rubenwardy wrote:It's a very bad idea though, as it may make making proprietary games and mods illegal


Simultaneously, re-licensing the code to GPLv3 would also be a very good idea, since it would allow us to incorporate some code from the STK project.
 


Return to Partly official engine development



Who is online

Users browsing this forum: No registered users and 0 guests