L3DT users' community
Large 3D terrain generator

Plugin ability for making our own map layers

It doesn't hurt to ask...

Plugin ability for making our own map layers

Postby BigYak » Mon Oct 09, 2006 4:05 pm

All,
This is my first post, though I've been lurking for a while. I've played with the plugin extensions, and am working on one to export maps to my application in a format I can read. Very cool, and thank you for adding that!

How difficult would it be for us to add in our own type of map layers? I know you said you're adding a road tool, but I'd like to programmatically create layers that have:
- "habitation zones" (based on water salinity, flatness of land, etc)
- "farm land" (based on terrain type, salinity, attributes, user variables)
- "minerals" (based on terrain type, heightmap, user variables)
- roads, caves, fishing areas, wind maps, etc.

Ideally, these could be exported as specialized files, though even saving them as greyscale images would be useful.

If we could use some of the algoirthms that you already have for combining fractals and perlin, that'd save a great deal of time.

Rather than you doing all of these, it'd be neat if there was some way for us to program them and add back to the community. If this is (relatively) easy based on your plugin architecture, that'd be cool.

Of course, it could be that those things are all offered within the Virtual Terrain Project, and I just haven't come across how to utilize them yet...
BigYak
New member
 
Posts: 9
Joined: Mon Oct 09, 2006 3:27 pm

Postby Aaron » Mon Oct 09, 2006 5:41 pm

Hi BigYak,

Welcome to the fora.

What you propose sounds like several great ideas. As it stands right now, the plugin system doesn't support this level extension, but that's exactly where it's heading over the coming weeks and months.

As I see it, to do what you want the plugin system will need:
  • The ability to retrieve project maps from L3DT (I'm working on this).
  • The ability to call more L3DT core functions, such as calculations (ditto).
  • The ability to define your own map types (I've done this in a previously unreleased plugin system, so it's no biggie).
  • The ability to add extension functions callable by L3DT or other plugins (ditto).
  • The ability to add menu options (I've not done this, so it might be fun).
I think this is all quite doable, and in a reasonable time-frame too.

Oh, by the way, a few hours ago I updated the plugin API to v1.1. Unless I've fscked something up, this is the version that will be the 'stable' release along with L3DT 2.4b.

The changes from v1.0 are some extra functions in CExtAPI (buffer_, var_, str_, calc_, and file_), plus some tinkering with the names of the list_ function, which I felt were just too long. Oh, I also changed the return values of list_DelAll (formerly 'list_DeleteMembers') and buffer_Free from void to bool. If you don't use these functions you won't need to change your code, but you will still need to compile with the latest 'CExtAPI.cpp', 'CExtAPI.h' and 'CExtAPI_defines.h' files. Sorry for the inconvenience. If it's any consolation, I've also added some more source code for plugins, including the full native/mosaic format HFF, which hopefully demonstrates how all the file I/O works.

Oh, one more thing, v1.1 of the plugin API requires L3DT v2.4.1.24, which I also uploaded a few hours back. If you compile with mis-matched versions of the API and L3DT you should see L3DT spout some warnings when the plugin is loaded, but it should not be terminal.

Anyway, thank-you for the suggestions. It's most encouraging to see that there are developers who are ready to take the ball and run with it, so to speak.

Cheerio,
Aaron.
User avatar
Aaron
Site Admin
 
Posts: 3696
Joined: Sun Nov 20, 2005 2:41 pm
Location: Melbourne, Australia

Postby Aaron » Mon May 21, 2007 5:57 am

Resurrecting an old thread: This request has now been met in the latest dev build, where you can indeed create your own map layers. These can be edited manually, and may be accessed by plugins for whatever calculations are desired.

Cheers,
Aaron.
User avatar
Aaron
Site Admin
 
Posts: 3696
Joined: Sun Nov 20, 2005 2:41 pm
Location: Melbourne, Australia

Postby BigYak » Mon May 21, 2007 12:48 pm

Very cool! I can't wait to check this out.
BigYak
New member
 
Posts: 9
Joined: Mon Oct 09, 2006 3:27 pm

Postby DeathTwister » Tue May 22, 2007 10:41 pm

Derrr,

OMG I do not think I have ever seen such a more prolithic Programmer in my life, Wow Aaron you fly like the wind and ain't no way I can keep up ROTFL, Great that there is a new dev build and yes, I have to go get it, and I am getting ready for a question post here today or tomorrow on a import question, but maybe I better go download and install the newest goodies and then ask aye? /smiles...... I like the ideas that Yak asked and Wow good thinking Homes /smiles.....make our own layers /drools


PS: Hay Yak enter something in the contest brother /winks......Help Aaron & the artists out /winks.
DT
User avatar
DeathTwister
Dearly missed
 
Posts: 562
Joined: Thu Dec 15, 2005 12:30 pm
Location: Klamath, CA.


Return to Feature requests

Who is online

Users browsing this forum: No registered users and 7 guests