Jump to content

Plugins for editor


Mycekralid
 Share

Recommended Posts

The original 3D World Studio had this functionality, and this is a likely feature in the future, using LuaJIT. This has a lot of advantageous:

  • Plugins are easy to write and cross-platform compatible. (No compiling required.)
  • Plugins can be precompiled as LuaJIT machine code and distributed to protect the source code.
  • LuaJIT can compile C code into the Lua binary object! So it basically makes a cross-platform version of a DLL.

 

I'm a big fan of 3ds max's MaxScript plugins system, and would model the design after that.

  • Upvote 4

My job is to make tools you love, with the features you want, and performance you can't live without.

Link to comment
Share on other sites

I understand they are trying to advertise that you don't have to make bindings but all the examples don't use custom user functions. Instead they are using functions that would come with the compiler. That's cool and all, but the ability to use 3rd party C code isn't really shown.

Link to comment
Share on other sites

I agree with Rick, LUA may be nice (except myself) but it's really limiting if we could only use the engine functions and cannot rely on third party libraries to make everything possible (from creating a new window in the editor to customize the property panels when an object is selected in the scene etc). A full support to more advanced stuff would be more interesting, I honestly would better invest time in C++ support for editor plugins (our assets packages could contain editor plugins too to easily manage its gameplay scripts in the scene).

  • Upvote 1

?? FRANCESCO CROCETTI ??

http://skaredcreations.com

Link to comment
Share on other sites

The idea is that if you want to offload the entire thing onto C++ you can just have Lua call a DLL function. So you can adjust the weighting between script and C++ as much as you like.

  • Upvote 1

My job is to make tools you love, with the features you want, and performance you can't live without.

Link to comment
Share on other sites

I'm not sure what YouGroove meant but if the possibility of calling dll functions is there, it seems fine to me :)

Would be nice if there would be a tutorial how to call these some day :)

For now normal commands on the engine would be fine as long as we could modify height maps livetime, like map generators or special brushes.

 

Thank you very much :)

  • Upvote 1
Link to comment
Share on other sites

Just throwing some ideas down. Something like this would be lot of fun:

function Plugin:Start()

local widget

 

--Identify what kind of plugin it is

self.type = Plugin.HeightmapGenerator

 

--Create info table

self.info={}

info.name="Josh's fractal noise generator"

info.author="Leadwerks Software"

info.company="Leadwerks Software"

info.url="www.leadwerks.com"

 

--Create UI table

self.ui={}

 

--Add a widget to the UI table

widget = {}

table.insert(self.ui,widget)

widget.type = Widget.Spinner

widget.name = "Noise"

widget.range = {1,100}

 

--Add another widget to the UI table

widget = {}

table.insert(self.ui,widget)

widget.type = Widget.Dropdown

widget.name = "Mode"

widget.options = {"Normal","Advanced","Extreme"}

 

end

 

function Plugin:Run(buffer,heightmap)

local noise = self.ui[1].value

local mode = self.ui[2].value

 

--Fractal stuff goes here--

 

end

  • Upvote 4

My job is to make tools you love, with the features you want, and performance you can't live without.

Link to comment
Share on other sites

I mean : It is too much work to make some minimal plugin for the release of 3.1 ?

 

The response is just : NOPE , no plugin for 3.1 so let's wait for 3.2 roadmap.

It would only take a month or 2 to have a prototype of a plugin system. Stop being so impatient. A plugin system will come when it ready. Just be happy for the OpenGL 4 support instead of complaining about what's not in leadwerks 3.1

Link to comment
Share on other sites

  • 1 year later...

There's other stuff that will make a bigger impact with less effort, so this is not the highest priority right now. The stuff I think really matters is carving, CSG vertex manipulation, vegetation, decals, networking, roads, water, and vehicles. And water and vehicles will be done as of 3.4.

  • Upvote 7

My job is to make tools you love, with the features you want, and performance you can't live without.

Link to comment
Share on other sites

I agree it is not biggest priority. But it could be considered perhaps in the future ?

I need some sort of plugint to simply make regions types for the AI , and drop some AI Manager that controls all foes on some area level.

A plugin system would allow me to visually adjust the regions without needing the try,change values, try again etc ... method.

Or simply visualize, the distances for some AI like attack, roam, escape etc ... a plugin that could show the distance in the editor before running the game would just rock.

  • Upvote 1

Stop toying and make games

Link to comment
Share on other sites

There's other stuff that will make a bigger impact with less effort, so this is not the highest priority right now. The stuff I think really matters is carving, CSG vertex manipulation, vegetation, decals, networking, roads.

 

ALL of that sounds awesome josh leadwerks is feeling more and more like the source engine, but 10 times better.

 

do you think that at some point we will be able to send steam achievement info and stuff in LUA at any point of time without having to use the c++ version? (maybe a plugin?) also a random map generator would great to have in the future

OS: Windows 10 Pro

CPU:  i3-10100 CPU @ 3.60GHz
GPU: NVIDIA 2060 Super - 8 GB

RAM: 32 GB

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...