PDA

View Full Version : Surpasses resurrection?



pazur
07-16-2011, 04:01 AM
Hey,

I don't know if anyone remembers but back in 2005-2006 I released a plugin called Surpasses that was interactive layers and passes system for Lightwave. Layers could be used both for managing scene content while editing and for rendering as well. There were many features but the plugin never developed to the point I wished for, mainly because of LW lscript/SDK limitations.
Anyway I've just found source files in my archives and thought it might be interesting to resurrect the thing, especially since there's still no native render passes solution in Lightwave.
The problem is, it doesn't work with LW 10 and I haven't been using LScript for a loooong time nor really have time to sink back into it.
I thought that if there is someone who knows LScript and would be interested in playing around with code to make it work and release it for free afterwards I can provide all the source and some hazy memories of how it all worked. I don't know how much fixing it would need. I did a quick test and it's giving me strange errors indicating that perhaps some LScript syntax has changed so it doesn't look like a 5 minut job.
Bear in mind that the main source file is over 17 000 lines long and although there seems to be plenty of comments in english it might not be very elegant code, I've never received any formal programming education ;)

So, if you're interested drop me an email - lukpazera at gmail dot com
To give you more info about the plugin I temporarily uploaded its old website here:

Surpasses website (http://lpazera.nazwa.pl/surpasses/Intro.htm)

And the plugin manual is in attachment.

50one
07-16-2011, 04:25 AM
That's a really good news and thanks in advance for that, been interested in it for a long time, now we need some up-to-date LScript guru to help you out. definitely interested! you could add a donation button to your site after release, will be happy to buy you a pint or two for that;)

Lewis
07-16-2011, 05:07 AM
Iteresting plugin, would be good to bring it back up to speed in 10.x series.

Chris S. (Fez)
07-16-2011, 05:13 AM
My personal favorite LW plug in of all time! Worked great with Fprime and was great for scene management.

I'd love to see Surpasses resurrected, though I hope Newtek is feverishly developing their own totally integrated manager.

geo_n
07-16-2011, 05:31 AM
Amleto, passport, lightnet and now this. There's no excuse for newtek not to integrate any of this in lw 10. Much needed tools in rendermanagement.
Is there a downloadable version that works in lw 9.6? I see myself using lw 9.6 for a long time and this is very useful.

UnCommonGrafx
07-16-2011, 07:20 AM
Please, someone pick this up!

The Superior pass manager. (Or so I thought.)

Thanks for letting it out in the wild.

nickdigital
07-16-2011, 12:04 PM
Thank you for releasing this. I'm a lscript noob but I'll give it a look.

bassmanjam
07-16-2011, 01:28 PM
Super! There's no excuse for the lack of a good native render pass manager in LW.

lwanmtr
07-16-2011, 01:56 PM
I hope someone does pick it up and fix it...looks like a very useful tool. Render passes has been something we've needed for a long time.

paulhart
07-16-2011, 01:56 PM
Newtek, Hello??!! This is a superb opportunity for the integration of Pass Rendering into Lightwave. Passport has been offered to interested coders and now Surpasses. It needs to updated to current LScript conventions and 10.1 but most of the HARD work has been done, what a great potential. Please, my coding skills are "lumpy" but Newtek has the brilliant resources and this is ripe for the current development needs....
I just finished an animation using my licensed copy of Amleto, works very well and is user friendly, another potential great resource....
Pleasessseeese!?
Paul

lwlurker
07-16-2011, 02:26 PM
Or maybe you could post the source files online with a wiki so that a whole community could get involved/contribute to its further development. This feature is important.

pazur
07-16-2011, 03:04 PM
Hey guys,

thanks for great response and feedback. I haven't really expected it and I wasn't really aware of the little open source movement with other plugins ;)
In my case, I'd prefer to give the source code to interested people first and let them see how much work it actually is to bring Surpasses up to date. Surpasses is older code then other plugins mentioned and not only LScript has changed but also Lightwave so some parts (like render options handling) might be really outdated and need disabling/replacing for the plugin to work properly.
I will be happy to hand the plugin to a leader afterwards who could manage the open source and any further udaptes or development.

Come to think of it perhaps I should dig up Auto Character Setup 4 installation and source code as well. I don't know if it's possible to fix it, I think it stopped working around 9.5 and one part of the plugin is a compiled C++ plugin that was not written by me and I don't have a source code for it :( Also, I think in case of ACS4 the problem might not be only in the code but also with the rigs. They might be constructed during plugin execution in outdated way and I don't know if there's anything you could do with this without updating the C++ part.
Still, you could convert rigs with LW 7.5 - 9.-0 and only animate in 10, that should work.

Matt
07-16-2011, 05:21 PM
I wouldn't mind taking a look at it, I got Passport working for 10.x.

paulhart
07-16-2011, 06:20 PM
Alright Matt... seems to me, I "heard rumor," that you'd taken up with them Newtek folk. Now, ifn't this is true, we may have a deal here.
So much for my "faux Texan" mauling, but the sentiment is still in the words. I am very pleased to have you express interest.
Bring it on board, along with Amleto and offer it as a 10.2 upgrade, make "all dem miscontents sit up and say yahoo!!"
Paul

UnCommonGrafx
07-16-2011, 07:03 PM
Having these tools come on board would soothe a few. A few others will just wonder where we got the kool aid.

Matt
07-17-2011, 12:18 AM
Alright Matt... seems to me, I "heard rumor," that you'd taken up with them Newtek folk. Now, ifn't this is true, we may have a deal here.
So much for my "faux Texan" mauling, but the sentiment is still in the words. I am very pleased to have you express interest.
Bring it on board, along with Amleto and offer it as a 10.2 upgrade, make "all dem miscontents sit up and say yahoo!!"
Paul

If I can make sense of the code easily enough, I would be working on it outside of office hours, in my spare time.

It wouldn't be "official NewTek" business.

But I just like helping out in the community like I did when on the "other side"!

geo_n
07-17-2011, 12:41 AM
Newtek should really look into this for lw 10. The author is giving it away for free.
Lightwave doesn't have a pass system with it. Screamernet is a dinosaur and amleto is also being offered for free.
Don't understand the logic when AD keeps buying third party plugin to include in their app while newtek doesn't do much with third party plugin support.

UnCommonGrafx
07-17-2011, 05:27 AM
FREE stuff, no less, for them to add value to their product.

hrgiger
07-17-2011, 08:06 AM
Good to see you here Lukasz. REF rules!

pazur
07-17-2011, 09:24 AM
hi,

thanks for all feedback again! I just sent out links to source files to all interested devs so fingers crossed, I hope it's not messed up too much ;)

hrgiger: heh, REF, old times, nice that you remember :)
Here's a little bit of my most recent efforts:
http://vimeo.com/25400772
This test was animated in Lightwave but, to be honest, I will be switching soft for further work...

mav3rick
07-17-2011, 10:50 AM
impressive stuff i love your art lukasz :)

GraphXs
07-17-2011, 11:21 AM
Wow! Nice!

Hey Matt, you should talk with Rob about having this apart of LW 10.x. LW really needs tools like this. At least offer it on a free plugins page of sort. Or work out a deal with the plugin coders that still sell these type of plugins.
LW needs this!

UnCommonGrafx
07-17-2011, 11:28 AM
There's a novel idea... For NewTek:
A Community LW Plugins Repository
Home for Abandoned Projects Still Viable

So far, three biggies would sit on the page. What a resource for those wanting to learn, too. The things that could spring from such seeds...

caesar
07-17-2011, 11:59 AM
NT wake up, use these great plugins!!!!

tayotain2
07-18-2011, 02:19 PM
Looks good! Please somebody heeelp! :)

paulhart
08-01-2011, 09:20 PM
Any word on this?? Surpasses is all LScript, worked fine in previous versions and needs to be updated to work with the changes in 10.1. I have taken a look at it, made some efforts, it compiles fine, but crashes Lightwave when I try some of the commands. I do not know how to get the debug function to work and don't have any clue how to track down what may be out of step. I know that there are skilled LScript gurus out there, and I am sure that Newtek has the skills. This is a great asset, which needs nurturing. I am just bumping this thread, as it has been quiet too long.
Paul

geo_n
08-01-2011, 11:12 PM
Is there a demo version out there?

Phil
08-02-2011, 12:27 AM
I have the code here, but there has been too little time to sit down and look at it yet. I'm hoping to get some time at the weekend, but cannot be sure.

geo_n
08-02-2011, 07:36 AM
I have the code here, but there has been too little time to sit down and look at it yet. I'm hoping to get some time at the weekend, but cannot be sure.

Great news. As long as its alive there's hope yet. :D
Looking at amleto, its now offered free unlimited node license and works great for those who don't want to deal with screamernet.

paulhart
08-16-2011, 07:19 PM
Just bumping along here with an animation project. Sure could use a pass rendering/management solution for Lightwave. I do it all the time in Blender, not sure if anybody has had a chance to look deep into the LScript for Surpasses. I don't have the chops??? Oh well... status update????
Thanks everyone. Paul

nickdigital
08-16-2011, 07:37 PM
I started looking through the code...there a lot of lines to sort through. :eek:

paulhart
08-16-2011, 09:16 PM
I too had looked at it, but thought there would be a more methodical way to parse it and at least have the LScript editor flag anything it found problematic. This is my experience with other code bases, but LScript seems not to want to help. Is there any approach other than line by line reading. I don't know what should be different from version 8.5, but I hope that someone who has worked with LScript all along would be able to spot the lumps. Is there a debugging strategy, or a line by line response that would highlight the troublesome pieces??? Glad someone is looking at it. Maybe a collaboration with other involved minds?? Thank you everybody.
Paul

thomascheng
08-16-2011, 11:06 PM
Passport and now Surpasses. I really wonder why we don't have a pass management system in LW. Surely it would be easier than starting from scratch?

Cageman
08-17-2011, 01:24 AM
Passport and now Surpasses. I really wonder why we don't have a pass management system in LW. Surely it would be easier than starting from scratch?

Beacause NT have their hands full allready?

And another note... I've heard that there is interrest from NT to completely rewrite the shading system, which would mean that..

1) If they go out of their way to integrate a pass management system now, it would become redundant once they come to the point where they will rewrite the shadingsystem, and thus, will have to throw away everything related to a pass management system and rewrite it to deal with the new shading system.

2) If you really want a working system for LW today, that is actively developed, go for Janus.

:)

geo_n
08-17-2011, 02:16 AM
2) If you really want a working system for LW today, that is actively developed, go for Janus.

:)


I suggested to janus dev before to take a look at 3dmax scenestate system thats very easy and direct approach to renderpasses. C4D might be as easy. He was very open to the idea but would still want janus to be as it is. I mentioned before that it was hard to get into janus and its a bit alien to the lightwave interface and workflow.
Max 2012 has greatly improved the scenestate system and made an external link to other appz and made scenestatesets, skipping the batch render system so you can render in one go.

http://www.youtube.com/watch?v=Dm6nwiF7nSg
Check how the workflow is using scenestates.

If lightwave can do snapshots of a scene and objects then we wouldn't have to breakout passes into separate scenes and object versions. I don't know if Passport or Surpass has this feature but looks like it does from the feature list.
I'm not a fan of breaking out passes into different scene and object version but this is a limitation of lightwave for having two separate appz and nothing to do with janus.

Lito
08-17-2011, 08:15 AM
I too had looked at it, but thought there would be a more methodical way to parse it and at least have the LScript editor flag anything it found problematic. This is my experience with other code bases, but LScript seems not to want to help. Is there any approach other than line by line reading. I don't know what should be different from version 8.5, but I hope that someone who has worked with LScript all along would be able to spot the lumps. Is there a debugging strategy, or a line by line response that would highlight the troublesome pieces??? Glad someone is looking at it. Maybe a collaboration with other involved minds?? Thank you everybody.
Paul

You can use lscript's debugger just put in

debug();

where you want to break the script then you can step through the code like all the debuggers out there.

nickdigital
08-17-2011, 08:42 AM
If the changes to lscript from the 8 to 9 and then to the 10 series are documented, that would be a good place to start.

GregMalick
08-17-2011, 09:53 AM
If I can make sense of the code easily enough, I would be working on it outside of office hours, in my spare time.

It wouldn't be "official NewTek" business.

But I just like helping out in the community like I did when on the "other side"!

Hey Matt,
It might be good to make this a team project you could coordinate.
I don't have time to review 17,000 lines of code... but if it gets broken into manageable bits and those pieces get assigned - it could be manageable.

Nicely documented/commented source code would be good for others others to learn from, too.

So I would be willing to help out (in my spare time) if you would be willing to coordinate the effort and parse out the work. Any other LScripters think this is a good idea?

evolross
08-17-2011, 01:52 PM
...I got Passport working for 10.x.
If Passport is free and working in 10.x, what's the need for getting this to work? Is there a significant feature difference?

UnCommonGrafx
08-17-2011, 02:39 PM
I think Surpasses is superior and would rather see it revived.

paulhart
08-17-2011, 02:55 PM
Plus One (+1) UnCommonGrafx, Surpasses is a more extensive implementation, that is why I push to get it brought up to LScript 10.1 levels. If I could fix it myself, I would. I am hoping someone else has the chops, or the idea of collaboration sounds great.
Paul

UnCommonGrafx
08-17-2011, 02:58 PM
Same thought, Paul,
If I had the skill (re: patience) I would take a stab at it. But I'm ... feeling a bit insane with work right now and it wouldn't bode well. No, not at all.

lardbros
08-18-2011, 05:59 AM
Great news Pazur... thanks for being so kind as to letting your hard work come here for free.

Although... don't want to be too negative, but I do see this as a bad thing. (Not the free stuff, but the situation Newtek are in).

The reason this stuff is being given over to OpenSource projects is because the skilled and very talented developers like Pazur, are moving onto other things. Lets hope this doesn't continue eh? Although, on the other side of the argument, we have some cool dev's working on some immense stuff too, like turbulence and ibounce.


Anyway, thanks Pazur, I remember surpasses... and very nearly bought into it back then :D Thanks to anyone here who would kindly give up their time to scour the lengthy codebase... wish I could help, but unfortunately I'm useless at programming type malarky!

Thanks!

50one
08-18-2011, 08:41 AM
Beacause NT have their hands full allready?

And another note... I've heard that there is interrest from NT to completely rewrite the shading system, which would mean that..

1) If they go out of their way to integrate a pass management system now, it would become redundant once they come to the point where they will rewrite the shadingsystem, and thus, will have to throw away everything related to a pass management system and rewrite it to deal with the new shading system.

2) If you really want a working system for LW today, that is actively developed, go for Janus.

:)


Wasn't the shading system rewritten back in ...well...errrm..long time ago, for the 9.x series? as I remember clearly ''State of the art KD-tree algorithms'' and those ''Beer-someone'' shading models? ?

I'll promise to have a look, got more exp in C++ but recently started to dig more into Lscript.

pazur
08-18-2011, 09:19 AM
Hi Guys,

Thanks for keeping the thread alive. I told you it wouldn't be easy job to fix Surpasses ;) but you definitely should not be forced to go line by line.
I got some weird syntax errors when trying to do the work myself and thought that the first step would be to correct these and someone who was familiar with most recent LScript version would know why parts of code that were running fine before give an error now. The first thing for me was that defining arrays (with constant text elements I think) would fail for mysterious reason, there was nothing unusual in there and I'm sure the way to set array element values has not changed so that threw me off.
After fixing syntax errors the basic functionality should work fine and then there might be work to be done on some features that might be handled differently in 10.1 then it was before (like antialiasing settings).

ZE_COLMEIA
08-18-2011, 10:45 AM
Great to see your generous contribution!
BTW..

I learned to model organinc things based on your tutorial long ago, that head modeling one.

diging on youtube I could see it again now

http://www.youtube.com/watch?v=_S_TMPb2ulA
consider some fanboyism :D

Lito
08-20-2011, 11:06 AM
First I want to say thanks to Lukasz for releasing the source to surpasses. :)

I took a look at the code, and found a few interesting things about it. For example you can't get the MatteObject status in lscript, but Lukasz came up with a nice workaround for keeping track of it. Unfortunately NT changed the way CommandInput called MatteColor so now I guess it checks the parameters if they are valid, so that part is broken. I was getting a crash error at that section because it tried to make a vector from a null string, and then do math operations on the vector :).

Though I only got one syntax errors when I tried to compile it. The sequence declaration for the tag numbers, I had to change the last one from END to TN_END cause lscript didn't want it to be named END (reserved word I think). After that one change I think the script compiled fine, though it was crashing all the time.

GregMalick
08-20-2011, 01:44 PM
First I want to say thanks to Lukasz for releasing the source to surpasses. :)

I took a look at the code, and found a few interesting things about it. For example you can't get the MatteObject status in lscript, but Lukasz came up with a nice workaround for keeping track of it. Unfortunately NT changed the way CommandInput called MatteColor so now I guess it checks the parameters if they are valid, so that part is broken. I was getting a crash error at that section because it tried to make a vector from a null string, and then do math operations on the vector :).

Though I only got one syntax errors when I tried to compile it. The sequence declaration for the tag numbers, I had to change the last one from END to TN_END cause lscript didn't want it to be named END (reserved word I think). After that one change I think the script compiled fine, though it was crashing all the time.

I wonder if this would do it for you.
http://www.newtek.com/forums/showthread.php?t=116285&highlight=MatteObject

paulhart
08-20-2011, 03:58 PM
... example you can't get the MatteObject status in lscript, but Lukasz came up with a nice workaround for keeping track of it. Unfortunately NT changed the way CommandInput called MatteColor so now I guess it checks the parameters if they are valid... I had to change the last one from END to TN_END cause lscript didn't want it to be named END (reserved word I think).
Lito, I appreciate your efforts. I annoys me (Rant) that Newtek doesn't jump in with some resource person, and problem solve LScript changes, to their benefit if it makes it easier for 3rd party development. (/Rant) I went through the Lscript-Ref (Thank you Mike Green!!) then I went through the LScriptUserGuide.pdf (from Newtek) looking for "reserved words" when I bumped into a similar impasse, apparently it is an insiders secret.
Thank you Greg for offering and assist.
A number of people here have thoughtfully offered and started working on Surpasses, (Collaborate??? Coordinate??) that Lukasz has graciously released to Open Source. Why is there NO comment or assist from Newtek??? I just don't get it.
Signed, Clueless User.... ;>)

GregMalick
08-20-2011, 05:03 PM
Lito, I appreciate your efforts. I annoys me (Rant) that Newtek doesn't jump in with some resource person, and problem solve LScript changes, to their benefit if it makes it easier for 3rd party development. (/Rant) I went through the Lscript-Ref (Thank you Mike Green!!) then I went through the LScriptUserGuide.pdf (from Newtek) looking for "reserved words" when I bumped into a similar impasse, apparently it is an insiders secret.
Thank you Greg for offering and assist.
A number of people here have thoughtfully offered and started working on Surpasses, (Collaborate??? Coordinate??) that Lukasz has graciously released to Open Source. Why is there NO comment or assist from Newtek??? I just don't get it.
Signed, Clueless User.... ;>)

Matt is from NewTek and he replied.

I'm didn't ask for the code and I'm not actively working on it because I came rather late to this party and others had already started. If Matt wants to coordinate the efforts of a group of people, I'll assist where I can. Otherwise I'm afeared (hehe) that people will be walking on each others work. I think Matt's a good choice because:


He works for NewTek
He's well respected by the community
He seems to visit the forums about every day
If some impassable snags are encountered - he might have better luck getting answers or fixes than the rest of us


anyway, just my two cents.

paulhart
08-20-2011, 05:31 PM
Not to put to fine a point on it, as I sincerely appreciate Matt and his contributions, before and after, going over to the "other side," but in his own response a couple of pages back, he said, "If I can make sense of the code easily enough, I would be working on it outside of office hours, in my spare time. It wouldn't be "official NewTek" business."
My puzzlement is still with Newtek proper, better support for LScript developers, documentation, more robust tools, active involvement in problem solving on this very valuable tool?? I just get lost in the "logic" of not contributing to something that could be a gift to appease the angry mob???

Lito
08-20-2011, 05:54 PM
I wonder if this would do it for you.
http://www.newtek.com/forums/showthread.php?t=116285&highlight=MatteObject

Yeah that looks like it would work, but the only issue about using it would be that the included 64bit dll file would need to be ported to 32bit and Mac platforms for surpasses to work across all LW versions. I am not really at that point yet, I just want to experiment more with the code to see what might have broke. Maybe just comment out anything not working just to see if we can get a sort of crash free version then find workarounds for anything that seems broken later.

I never used surpasses before so I don't even know how it suppose to look if working correctly. I really should dig up v8.0 and install it just to see it in action. :)

faulknermano
08-28-2011, 02:12 AM
I suggested to janus dev before to take a look at 3dmax scenestate system

That'd be me! :D


He was very open to the idea but would still want janus to be as it is. I mentioned before that it was hard to get into janus and its a bit alien to the lightwave interface and workflow.


I appreciate the different kind of user that thinks differently than I do. I took something home with me with the aforementioned scene states concept of 3dsmax, though it was more of workflow idea, because, as geo_n has already expressed, it's LW's burden to have such a system; every other manager out there just works with/around the existing structure.

After more than five years developing Janus I find that I can take the existing Janus engine and turn it into almost anything anyone wants, albeit with lots of front-end work. But this work is something I don't have time nor incentive to do, partly because it's difficult to please everyone's idea of a render pass manager; but it's mainly because I believe in the concept I've set out with Janus, and that it is a full-fledged production tool. At first, numerous people asked me if it worked like Surpasses, and I had to disappoint them by saying that Janus is a breakout system - none of that interactive viewport functionality. And the reasoning was practical: it would have taken me to a route that made it difficult to develop it with stability together with my production needs. I toned down my design expectations based on what LW and LScript could do most reliably, and focused instead on internal workings that defined workflow, not features.

I'm glad Lukasz has actually released the code because it seems to allows Janus to be what it really is in my mind. But it is a bit disappointing that I myself won't be able to contribute to another render pass concept (like PassPort), because if there was any incentive and time, I would definitely endeavour to make it work.

(Disclaimer: I hope I did not come across as hijacking the thread with my talk about Janus; anyone who knows me would assure you that any talk of Janus has more to do with an appreciation to the Janus concept than anything to do with advertising it. :D )

iain_r
08-29-2011, 06:55 AM
Hi, I've compiled these for 32bit Windows. I can't do mac as I don't have a mac and I've never used xcode. I think that there are only a couple of bits different, i.e. windows references for dlls. The object info is limited as it was really a test for specific options matte not being available in lscript.

Regards

Iain.

forgot to add, only add the AquireGlobal.dll as a plugin. The objectinfo is loaded by the lscript call for the library. There are no panels with these.

paulhart
09-05-2011, 11:20 AM
Not sure if I should ask anyone specific, but I am curious about the process of getting Surpasses updated and available. Haven't heard any activity on this thread, but would like to encourage the process, as Pass management is a much needed aspect of Lightwave production. Thank you.
Paul

paulhart
10-05-2011, 07:11 PM
Can there be a collaboration, or a committed LScript guru, tackle this gem of an asset. I can get nowhere, with CRASHING after successful compiling. If I load it in the LSEditor, it even crashes out of it, hardly inspiring if I want to use it to DEBug the script. How would anyone approach this. It was working in a prior version, and the Developer did not seem to think that it would be all that difficult for someone who know the changes in LScript from prior versions. Couldn't someone at Newtek contribute. This would be a wonderful gift to offset some of the rancor.
I am rather stumped, as my Google searches for resources on the subject link only to the new homepage of Newtek, useless!!!

Lito
10-06-2011, 09:32 AM
I was using notepad++ to edit the script. I don't personally use the LW lscript editors, but I do remember loading it once without it crashing the LSEditor. I do highly recommend getting notepad++ if you want to edit it, then selecting C++ language highlighting. It will let you fold the code between brackets {} to help manage some of the code since it is quite large. There is also a LScript highlighting config for Notepad++ in one of the Lscript discussion areas on this forum but it doesn't let you fold code though.

Compiling the scripts should not be necessary you can run them directly from the .ls file. Just open the master plugins interface, select Lscript, then load in Surpasses.ls file. That will save you a step and some time.

I worked on it a bit, but I only got to a point where it would load in the master plugin, then when you double click, it would open the interface but if you clicked on any but 2 of the tabs it would crash. I tried for a couple of hours to figure out where the crash was occurring placing the debug() call in various functions that the interface should call, but it was pretty time consuming if it popped up the debugging window and stepping through the code and then in the end the crash didn't even happen, or it just crashed before the debug call even ran.

At the moment I think the best bet would be to write a small function to output debug info to a text log file then put that call at the top of every function and to hopefully get the exact function(s) that is causing the crash and carefully try and find out why it is occurring. Another thing that is needed to be done is to go through each CommandInput call like the CommandInput("ObjectMatte ."); and write a short test program and see if that is still returning what surpasses is expecting cause surpasses is pretty dependent on those things returning the proper values. But unfortunately I just haven't gotten back to it.

paulhart
10-06-2011, 10:16 AM
Lito, Hello... and thank you for the response.
I have used Notepad++ for years, yes it is excellent, and I do have the LScript definitions in place. I had not thought of using the C++ definitions with the idea of collapsing the structure of the code for manageability. Thank you for that idea. I too am able to load it into LSEditor just fine, sorry if I misrepresented the problem, but any use of the Tabs at top crashes instantly?? I have been able to load Surpasses as a Master Plugin in Layout, both as LS and LSc forms. It initiates action in the scene, as seen in the Scene Editor. When I double click on the Surpasses Master Plugin, the interface opens correctly, but like you, clicking on the Tabs at top crashes it out. I am asked if I want to create a CrashReport. Since Newtek has shown no interest in assisting the development of LScript currently, and this crash report involves a third party plugin, I don't send in the CrashReport. It would be helpful if these were collected and reviewed as a means of problem solving.
Your ideas of test scripts and Debug() calls sounds good, albeit slow. I had hoped that someone with a greater knowledge of the changes in LScript across versions could look over the code base to find the more obvious gaffs, clearly someone at Newtek should know, but no interest has been shown.
I have several LineNumber errors that I have attempted to check out, but again, I run into my limitations and the limits of a robust editor similar to other languages with code help.

11742 Invalid array index value [0], when Surpasses is initiated without and object in Layout yet. This is valid, but an Error Trapping for this condition and an Error Message would be helpful.
11353 Invalid object Reference, no idea when looking at the code, what the problem would be at this point, such are the limits of my knowledge.

I have included the two .dlls that were suggested and offered earlier, in the LScript folder along with the Surpasses scripts.

There are several people who have mentioned looking at the code in this thread, but no mention of movement, so I sincerely thank you for responding and indicating, both your progress, methods, and difficulties.
Paul

Myagi
10-06-2011, 10:54 AM
If you have visual studio then try running LW through the VS debugger, when it crashes the callstack may give you a hint what the crash is related to (not as direct reference to the LS code but what LW subsystem).

I'd have a quick go at the debugger, but I don't want to request the source code for something I don't have time to get involved in more than a few minutes.

Lito
10-06-2011, 11:17 AM
Your error at 11742 is caused because the program must be trying to access a value in the array index 0. That is invalid because lscript arrays all start at 1. I changed that section completely to make sure that condition would not happen in the event that the .size() function returned 0.

My 11353 is probably different now, I didn't touch this function that it falls in on my source. Maybe write me a bit of the beginning of the line so I can find it. It should be close to where I am in the "getLgtProps" function.

The 2 dlls are of no value yet as you need lscript to call the functions contained in them for them to do anything. Right now the CommandInput("MatteObject .") functions in my code are just fixed to always return false and be black. That is the reason why I said that it would be necessary to check each CommandInput call in the script. Anything that isn't returning what surpasses expects needs to be rewritten in such a way that calling an external dll will get that info.

BTW check your PMs

paulhart
10-06-2011, 12:34 PM
Lito, Thank you for the response and your work. I did check my PM and incorporated the changes. I will see where I stumble next.... and post my difficulties.
I did PM you also, but wanted to publicly acknowledge your efforts here.
Paul

Lito
10-07-2011, 11:31 AM
Well I decided to spend an hour on this last night it ended up being like 4 or 5 instead. But I got a lot farther with it.

The crash bug while navigating the tabs is gone now :). The icons were what was causing it. Once I removed them the interface comes up and you can navigate it without it crashing on you. But it doesn't seem as if anything is really working yet so there is probably a lot more to do. I still don't quite get why the icons are the cause of the crash bug though. The code seem valid and correct, but no matter how I tried to keep them in it crashes as soon as you went to a tab with icons in it. I put in the same icon code on one of the tabs buttons that didn't crash before, and it didn't crash when the requester popped up but the control looked like it was disabled. If you pressed it, it crashed.

Edit: I attached the original surpasses devpack that Lukasz Pazera was giving out and my edited Surpasses.ls file that won't crash constantly upon navigating the interface, now that I got permission to do so :). Thanks Lukasz.

Warning: It is not usable yet. I am uploading it so that anyone who might be also working on it can take a look at the fixes I did. There is still a lot to do to get it functional. BTW adding it to the masters plugins in Layout will cause a crash on exit of layout and also crash on you if you make a new scene.

paulhart
11-02-2011, 03:36 PM
I haven't seen any further discussion here, but I remain interested. Just wanted to warn others that the current Alpha development version of Surpasses that I have on my system will cause a Crash if I "scan" the Plugins folder in Layout. I had been reporting this as a bug and got a response that I should add each plugin separately to find the problem. Hardily a "solution" with a very full folder of plugins, but I was able to isolate it to this LScript alpha version. I remain puzzled by Newtek and their lack of involvement in problem solving their own LScript on a piece of now Open Source software that would address the Render Pass Management needs of Lightwave. I appreciate the efforts of Lito and others, wish I could contribute more directly than this.
Paul

paulhart
11-16-2011, 11:51 AM
Now that Lightwave has moving on to version 11, and many of us are playing with it, can we have some attention directed to getting Surpasses working. Newtek announced that Lightwave 11 includes strong Python integration and improved Buffer Export, but Render Pass Management wasn't in the list. It seems timely that Surpasses could step into the gap, perhaps re-written with Python or just patched and updated to work with the current version. I am currently studying the LScript code, thoughtfully provided by the author, and wish I could code better. Others have mentioned an interest but this thread has been stagnate for awhile???

50one
11-16-2011, 02:18 PM
Hi there,

I've also have a look at the code and studied it for a while, problem is that my Lscript skills are much worse than python skills, there were also things done in the code - let's call them "tricks" to get certain info from layout and that wasn't working properly in LW 10.1, so I gave up, wih I could have more time as it is really great tool.

paulhart
11-23-2011, 09:29 PM
http://www.hartworks.net/lightwave/iconCam.pngSometimes, you do what you can. I sent this collection of "Icons" to one of the interested parties, but also thought to post them here on this thread, if only to stimulate some thought. It is a complete set of Icons for all of the calls in the Surpasses code, that currently are referenced as "strings" and not graphic elements. To use these would require a serious re-factoring of the LScript, but that is required anyway. I hope that maybe someone with good LScript chops or Python skills can re-factor the Surpasses code for use with Lightwave 11, since it has been stated that we will not be receiving a Pass Management element now, and some have already stated that the Buffers have limits, though improved. Anyway, take a look and see if these are useful. The ZIP file has 41 Icons, all the same size, small PNG format, ready to use and named to match the code.http://www.hartworks.net/lightwave/Icons.zip

geo_n
03-02-2012, 09:50 AM
update