The one killer feature

ackees

New member
The one killer feature.
An intelligent communicating device.
This device would solve many problems because it would immediately know how to implement many of the requested features for LW users. Essentially most apps today can use most of today’s technology (if its available in Maya or XSI then theoretically LW can do it too, the problem for the LW programmers is not technology but implementation. Users have difficulty accessing and using many features.
Your future skill as a 3D artist will be in your communication with the AI interface.
Levels
On level one are the machine coders who build the AI
On level 2 are programmers who adapt incoming commands and provide additional options (this will include the current plug-in developers - the plugin concept was useful but it seems to have run it’s time.).
On level 3 are 3D artist who work directly below the modular interface (they ignore it and build their own proprietary models that are then used by level 4 artists (through the AI interface).
On level 4 are 3D artist who create stunning and original works through their adept communication with the AI interface.
I would like to see LW start this process, and they should start with character models and animations. I don’t mean samples and presets, I mean an intelligent communicating device within the app.
 
uh?

what are you asking for exactly?

more open architecture so users can customise how the render engine, surface attributes, IK etc. work?
 
Yeah, I recently watched a video showing how Chat GPT could be prompted into writing the code for a 3D Studio Max plug-in button that could randomize the color of selected objects.

So that might be possible to do with L-Scripting or Python for Lightwave.

In which case, yes, 20 years later, it has begun to be possible to do now.

I still read the first post and think of StarTrek and why anyone would want to do that when they can do things themselves.
 
....I still read the first post and think of StarTrek and why anyone would want to do that when they can do things themselves....

If you are an animation studio or independent animator that sells their own IP, then an AI enhanced DCC can potentially be of great benefit to the productivity of the production process and help lower production costs.

From a business stand point, there's a lot to like.
 

SA9R:​

Yeah, I recently watched a video showing how Chat GPT could be prompted into writing the code for a 3D Studio Max plug-in button that could randomize the color of selected objects.

So that might be possible to do with L-Scripting or Python for Lightwave.

Chat GPT don´t have access to the Lightwave code, that´s what it said.. and can only estimate a script making based on open/general python code I believe.
Blender on the other hand, it will assure you.".sure I can do that,"
But quite often it fails anyway, partly due to all the versions that is rapididly released so it doesn´t know which version to write for, even if you specify it.

Though I would guess ...during the time orogressing and all people asking and using it, it will probably learn from it´s mistakes and the code suggestions will be better in the end.

For lightwave, you just can´t copy a blender python code and expect it to work in Lightwave, the AI system needs to know about the Lightwave code, and it doesn´t.
 
Last edited:
L-Script should be documented online, in which case ChatGPT would have read it so that it could respond to questions about it.

You tried and it didn't work?

I'll have to do my own foot work too.
 
L-Script should be documented online, in which case ChatGPT would have read it so that it could respond to questions about it.

You tried and it didn't work?

I'll have to do my own foot work too.
I got a python script in return, it say it could try to make one, but the script didn´t work..and that was as long as my interest in it would stay..it ended there, especially considering it can not disect the lightwave code.

L-script is deprecated in later lw versions.
for other lw versions and L-script you can try it out, my first tests yields errors when trying to make a simple box though, and a correction in with the chat conversation, it couldn´t give me the proper correction, it may after some more error reports, but I don´t have time for it now.

Try it yourself, just ask it to make (pandoras) box :) in the desired Lw version
and you will get a script, copy code and paste in to ls-commander (the ai do not understand it is called ls commander, not editor.)
something like below to start with..

can you make a box in lightwave 2019 version with l-scripting?




Yes, you can create a box in LightWave 2019 using L-scripting. L-script is a scripting language specific to LightWave 3D that allows you to automate tasks and create custom tools.
Here's an example L-script code to create a box in LightWave 2019:
lscriptCopy code
@version 2.5

main
{
// Create a new box
createObject("Box");

// Set the box's size
setObjectSize(1, 1, 1);

// Set the box's position
setObjectPosition(0, 0, 0);
}

function createObject(objectType)
{
selectNone();
selectObjectByName("");
clearSelection();

addObject(objectType);

selectObjectByName("");
}

function setObjectSize(x, y, z)
{
setScale(x, y, z);
}

function setObjectPosition(x, y, z)
{
move(x, y, z);
}
To use this code, follow these steps:
  1. Open LightWave 2019.
  2. Open the "LScript Editor" from the "Utilities" menu.
  3. Create a new script or open an existing script file.
  4. Copy and paste the code into the LScript Editor.
  5. Save the script with a .ls extension (e.g., "create_box.ls").
  6. Click the "Run" button in the LScript Editor toolbar to execute the script.
This script will create a new box object in the scene with a size of 1 unit in each dimension (x, y, z) and place it at the origin (0, 0, 0). You can modify the size and position by adjusting the parameters in the setObjectSize and setObjectPosition functions.
Note that L-scripting in LightWave is an older scripting language, and since LightWave 2019, Python scripting has become the preferred method for automation and custom tools. If you have the option, it's recommended to use Python scripting instead.



it cant find command generic_box_center_scene




I apologize for the confusion. It seems there was a mistake in the previous code. The correct command to create a box in LightWave 2019 using L-script is generic_box_center_scene, not createObject. Here's the updated code:
lscriptCopy code
@version 2.5

main
{
// Create a new box
generic_box_center_scene(1, 1, 1);

// Set the box's position
generic_item_info(0, 0, 0);
}
Please follow the same steps as before to run this code in LightWave 2019. It will create a new box object in the scene with a size of 1 unit in each dimension (x, y, z) and place it at the origin (0, 0, 0).


Regenerate response


I am no programmer, nor do I aspire to be one, it is of course a good thing to have some scripting skills, but my interest and time and tolerance for it is very moderate.
I did some basic rewrite of some scripts, partly from modeler..based on already existing scripts to allow to start the text tool in layout, and also a replace script that will replace objects more properly in the scene.

Currently though..You may be better of testing ls commander and see what happens when it adds things to a scene, and take notes, or learn ls-scripting for real, rather than trying to get chatgpt produce a simple box, seems it´s not understanding the lscript version properly, despite given info on the Lightwave version.
 
Last edited:
Here´s where you can tell how extremely intelligent it is :eek:(n), when I say it doesn´t work, it guides me to making a box in modeler instead manually, and there is no way to create one with an l-script, little does it know you could record the create box model tool in layout, to extract the script.

Also..if it concluded this after the first test, it shouldn´t even have tried to do it in the first place ..should it.

I apologize for the confusion once again. It appears that there was an incorrect command used in the previous response. Unfortunately, LightWave 2019 does not have a built-in L-script command specifically for creating a box.

However, you can create a box in LightWave 2019 by using the built-in tools and functions available in the interface. Here are the steps to manually create a box in LightWave 2019:

  1. Open LightWave 2019.
  2. Make sure you are in Modeler mode (if not, switch to Modeler by clicking on the "Modeler" button at the top-right of the interface).
  3. Click on the "Create" tab in the top menu.
  4. In the "Primitives" section, click on the "Box" button to activate the box creation tool.
  5. Click and drag in the 3D viewport to define the size of the box.
  6. Release the mouse button to create the box at the desired size.
Unfortunately, since LightWave 2019 does not have a specific L-script command for creating a box, you would need to rely on the manual creation method outlined above.
 
An idea of innovative modeling tools, there´s something I would like to have, don´t think it´s possible in blender, maybe with extreme talent in using geometry nodes.
It´s not a killer feature, but imagine the AW bezier bridge, you pick a poly on one mesh segment and another poly on the same mesh segment..o another mesh segment, then run it..you can then control the bridge with curve handles.

Now..what I would like to have is a multi poly selective bezier bridge, with a spline and handles to control it, so you could pick several polys, perhaps in a pattern, then run it..and it will provide you with a spline on each bridge connection, which you also should be able to save out, or load a premade curve, or use a background curve.

This would be really hard to acheive though, it would also be difficult to have it understand where to start eatch spline based on the polys selected, it would be an awesome
spline bridge tool though, oh..and I forgot, this operation should at it´s excellence be none destructive, you could go in and edit the each spline individually or multiple splines at once and change spline profil by a preset, or manually editing it´s handles.

Perhaps ..LW cad Victor frankenstein could make this come alive :)
 
Very interesting.

It looks like it is working somewhat.

The script of actions can be recorded in Layout? That sounds interesting too. There are some macro functions that I would like to put together which are simply to do macros based on some numeric input. For example, running the Spider UV: Count the number of segments in the model, press a macro button, enter the number of segments in the dialogue box, then let the macro run for that number of times, selecting the next loop and running Spider UV. Much better than sitting there and doing it piece by piece by hand. There is probably a way to do the counting of segments automatically in a script too.
 
Very interesting.

It looks like it is working somewhat.

The script of actions can be recorded in Layout? That sounds interesting too. There are some macro functions that I would like to put together which are simply to do macros based on some numeric input. For example, running the Spider UV: Count the number of segments in the model, press a macro button, enter the number of segments in the dialogue box, then let the macro run for that number of times, selecting the next loop and running Spider UV. Much better than sitting there and doing it piece by piece by hand. There is probably a way to do the counting of segments automatically in a script too.

yes,
Work in textured wireframe display.
just go to utilities and open ls commander the first thing you do with a fresh scene, then go to the layout model tab.
Add a plane width 1km, and depth 1km, set segments to 25.
click ok.

In ls commander you will now see under events that there is four commands, right mouse button click on each command at the time and you will see it adds those commands in to the black field in yellow text.
go to the first session drop down menu and choose convert to cs, then click on install..and you will have a prompt where you can label your lscript plugin, like
Grid 1km_25 divisions.
Click ok and you should get a yellow confirmation at the bottom of the lightwave UI..succesfull added.
In your macros tab, there should be a new button as you have labeled it, click on that, and you will have a requester popup with already set scale and divisions, but you do have to confirm ok, and then it adds the plane with those divisions, there´s more to it if you would want a direct plane addition only, where you probably would have to enter values of the grid within the script.

In ls commander you can then save out session as ls script and store wherever you want and recall.

But you can´t do some things with it, for instance, we have a null we can add with lscript, recording etc, but it can´t record your changes to the null property geometry,so you can´t make a null that is automaticly setup to be a VDB container, I think you would have to go deeper in to plugins writing or scripting than just trying to record that.

Then again, I believe OD tools had some of those tools to make it easier to work with VDB´s.
 
Very interesting.

It looks like it is working somewhat.

The script of actions can be recorded in Layout? That sounds interesting too. There are some macro functions that I would like to put together which are simply to do macros based on some numeric input. For example, running the Spider UV: Count the number of segments in the model, press a macro button, enter the number of segments in the dialogue box, then let the macro run for that number of times, selecting the next loop and running Spider UV. Much better than sitting there and doing it piece by piece by hand. There is probably a way to do the counting of segments automatically in a script too.
It´s macro recording in layout, you can not do any ls commander recording in modeler ..as I am aware of.

I myself was just wrestling too long time with a simple camera target macro recording, I got an ls recording script working, while in CS mode, but as soon as I convert it to lscript, it changes the h,p values for the rotation of the camera, so the camera will not point at target, only keyframes.
Now if I keep the script intact in a text doc, or save as cs file, I can reload, or with the text doc just copy and paste in to ls commander and click execute, the camera will be added with a null setup as a camera target, but once I try to install it, values are screwed up, and if I save it to ls script, while the data seem correct, it protests that null (1) can´t be found, since it seem to have two different nulls.

but try this, copy and paste this in to ls commander, execute it, do not install, and you should have a working camera target.
Have no idea right now why it doesn´t install properly or convert to lscript properly, I am no coder and hardly do any scripting, just hacking mostly.
So I would have to dig deeper in to it to solve it perhaps, if I feel for it.

Someone actually did a camera target plugin/script upon my request, I have it around somewhere, do not know where right now though.

so again, copy below code, paste in to ls commander in layout, execute..do not convert or install it, until you tested this works..then you could try to solve it later by converting and editing the code.

Oh..sorry, this one works for 2015, not 2019 and up..will have to check if I can do that one as well.

@warnings

generic
{
CommandInput("Generic_lscriptcommander");
Refresh();
AddNull("Null");
AddCamera("Camera_Target");
Refresh();
Refresh();
Position(0, 0, -5);
MotionOptions();
TargetItem("Null (1)");
HController(1);
PController(1);
TargetItem("Null (1)");
 
Last edited:
This one for copy and paste to lightwave 2019 ls commander, exectute, same as above, install or convert will screw things up.

Generic_lscriptcommander
Refresh
AddNull Null
Refresh
AddCamera Camera
Position 0 0 -5
Refresh
Refresh
MotionOptions
TargetItem 10000000
HController 1
PController 1
TargetItem 10000000
 
Last edited:
Back
Top