YOUR ACCOUNT

Vladimir Golovin
Administrator
Posts: 3446
Filters: 55
The final beta of Filter Forge 2.0, Beta Stage 4, is online:
http://www.filterforge.com/download/beta2/index.html
  Details E-Mail
Redcap
Redcap

Posts: 1290
Filters: 100
I can honestly say this was the last thing I expected today. I will have to play with it for quite a while. Awesome work!!!



If you are bored check out my unpractical math website
  Details E-Mail
ronjonnie
Designer / Artist

Posts: 809
Filters: 320
THANK YOU Vladimir! smile;)

Have a GREAT day! smile:)

Ron
zazzle.com/Ronspassionfordesign*
So much to learn, so little time.
  Details E-Mail
Zoltan Erdokovy

Posts: 204
Filters: 24
What? Only one new feature? What the...

Oh, what's that? LUA scripting?

/me is in shock.

/me recovers slowly.

/me embraces FForge even more (if that's humanly possible).
  Details E-Mail
Vladimir Golovin
Administrator
Posts: 3446
Filters: 55
Zoltan, if memory serves, it was you who inspired us to do the Bearestroika example -- some time ago you posted a photoshopped FF screenshot depicting a "DooM" component. We liked that idea, as you see smile:D.
  Details E-Mail
Crapadilla
lvl 52 Filter Weaver and Official "Filter Forge Seer"

Posts: 4365
Filters: 65
Scripting, scripting, scripting. Now you make me wish I could script! smile:blush:



What about 'polymorphic' components? They won't make it into the commercial release?

/pulls out a Bomber component

Drats! Still no depth-sorting!

smile;) smile:devil:
--- Crapadilla says: "Damn you, stupid redundant feature requests!" ;)
  Details E-Mail
Zoltan Erdokovy

Posts: 204
Filters: 24
Hah, yeah, I remember, lol, and you pulled it off, man, you're the best. smile:)
  Details E-Mail
infiniview
digital artist

Posts: 202
Filters: 13
Wow Very Cool,

Force seamless and a way for peeps to create their own modules. Awesome!
at least 90 percent of all sensation is texture, even beyond the visual, with elements of noise, tone, gradients, interval and degree.
  Details E-Mail
Sjeiti
sock puppet

Posts: 722
Filters: 71
Lua... damn... there goes my free time
  Details E-Mail
Vladimir Golovin
Administrator
Posts: 3446
Filters: 55
Quote
Crapadilla wrote:
Now you make me wish I could script!


It's easy and fun. Use the default script of the Map Script component as a starting point, and try to tweak it.
  Details E-Mail
Mike Blackney

Posts: 375
Filters: 57
Okay, FF, I think you just won.
  Details E-Mail
ronjonnie
Designer / Artist

Posts: 809
Filters: 320
WOW!
Welcome back Crapadilla! smile:) smile:) smile:) smile:)
We all missed you!!


Have a good evening. smile:)

Ron
zazzle.com/Ronspassionfordesign*
So much to learn, so little time.
  Details E-Mail
CFandM
ForgeSmith

Posts: 4764
Filters: 266
Quote
Sjeiti wrote:
Lua... damn... there goes my free time

+10 better make that +10,000 smile;) smile:)

Seriously thou GREAT WORK FF CREW...Does this mean there will be a new tab for scripts kinda like snippets? Or just post in the scripts thread?
Stupid things happen to computers for stupid reasons at stupid times!
  Details E-Mail
dmorrill
Posts: 15
I've been playing around with creating a few simple scripts for a bit, and I must say that this is just an awesome new feature (not to mention pretty easy to use)!

Will there be a mechanism to add created script components to the "Components" list in the filter editor?
David Morrill
  Details E-Mail
Sphinx.
Filter Optimizer

Posts: 1750
Filters: 39
Aww nice.. and I didn't see it yesterday as it was my birthday.. very good timing FF smile:-D
  Details E-Mail
dmorrill
Posts: 15
Just out of curiosity, are you guys using LuaJIT, or just the standard Lua distribution? If you're not using LuaJIT, it might be worthwhile considering it for the future, just to squeeze out some extra performance. Just a thought...
David Morrill
  Details E-Mail
Totte
Übernerd

Posts: 1460
Filters: 107
Happy bday yesterday Sphinx smile;-)
- I never expected the Spanish inquisition
  Details E-Mail
KGtheway2B
KGtheway2B

Posts: 660
Filters: 34
what is this i dont even...


smile:eek:
  Details E-Mail
Dmitry Sapelnikov
Filter Forge, Inc. AKA Egret
Posts: 76
Filters: 5
Quote
Crapadilla wrote:
What about 'polymorphic' components?

Uff... They are as desirable for us as for you, Dilla smile:|
But we've decided to cut this feature for 2.0 release.
As usual the reason is lack of time...
  Details E-Mail
Vladimir Golovin
Administrator
Posts: 3446
Filters: 55
Quote
dmorrill wrote:
Just out of curiosity, are you guys using LuaJIT, or just the standard Lua distribution?


We're not using LuaJIT at the moment, but of course we are planning to add it sometime after the official release. It may pose minor problems -- e.g. it may require us to disable debug hooks which we use for terminating infinite loops. We may also make the debug hooks optional -- turning them off will disable infinite loop termination, but on the other hand script execution will be faster.
  Details E-Mail
Crapadilla
lvl 52 Filter Weaver and Official "Filter Forge Seer"

Posts: 4365
Filters: 65
Quote
ronjonnie wrote:
Welcome back Crapadilla! Smile Smile Smile Smile We all missed you!!


LOL ron,

no need to welcome me back everytime I switch off my lurking device. smile;)

Quote
Egret wrote:
Uff... They are as desirable for us as for you, Dilla. But we've decided to cut this feature for 2.0 release. As usual the reason is lack of time...


Well, for now, depth-sorting for Bombers would suffice! smile;)
--- Crapadilla says: "Damn you, stupid redundant feature requests!" ;)
  Details E-Mail
dmorrill
Posts: 15
Quote
Vladimir Golovin wrote:
We're not using LuaJIT at the moment, but of course we are planning to add it sometime after the official release. It may pose minor problems -- e.g. it may require us to disable debug hooks which we use for terminating infinite loops. We may also make the debug hooks optional -- turning them off will disable infinite loop termination, but on the other hand script execution will be faster.


Well, that will really be icing on the cake, since the performance of scripts is already pretty good.

I'm hoping you'll also allow saving (and naming) scripts as reusable components. Just playing around with it today I created a filter that needed two copies of the same script component. While I was tweaking the behavior of the script, it was a bit of a pain having to keep changing both copies of the script code (one for each component) to keep them in sync.

I'm also looking forward to seeing a few more details on debugging, printing and logging script information. My script is about 99.9% operational, but there is some edge case that is causing a problem. I've inserted some checking logic to handle the error, but it would be nice to understand how the problem is coming about.

Overall though, I've been really pleased with how easy it is to create script components. This is the "must have" feature that finally got me to pull the trigger on ordering the 2.0 pro upgrade today smile:D
David Morrill
  Details E-Mail
Vladimir Golovin
Administrator
Posts: 3446
Filters: 55
Quote
dmorrill wrote:
created a filter that needed two copies of the same script component.


I had an idea of providing a place for so-called "Global Scripts", where you could define functions and initialize variables that will be visible to all script components in the filter.

Quote
dmorrill wrote:
I'm also looking forward to seeing a few more details on debugging, printing and logging script information.


A quick debugging tip: you can use the Color Inspector to examine numeric values of your variables -- just return the variable as one of the RGB channels.
  Details E-Mail
Targos
Game Dev
Posts: 196
Cannot connect to server.

  Details E-Mail
dmorrill
Posts: 15
Quote
Vladimir Golovin wrote:
I had an idea of providing a place for so-called "Global Scripts", where you could define functions and initialize variables that will be visible to all script components in the filter.


Well, that sounds good also, but I guess I'm thinking of something that would allow us to save a script component, its input definitions (and a name) as a new component that we could drag from the Components list. Right now it doesn't seem like there is any easy way to re-use a script component in another filter (unless I'm missing something).

Quote
Vladimir Golovin wrote:
A quick debugging tip: you can use the Color Inspector to examine numeric values of your variables -- just return the variable as one of the RGB channels.


OK, but I hope there will also be a way to output data to the console/logging window as well. In my case, I'm getting 'nil' values when doing certain table look-ups, and I would like to know what key values are causing the problem. For now I simple check every look-up to see if it returns 'nil', and then substitute a valid value for the result. It can't be occurring in very many cases, because the result is visually correct, even with the errors. But if I don't handle the nil case, the script fails with an error. So I need the ability to display the key value causing the error somewhere. I tried calling 'print' in the 'prepare' function, just to see if it would send the data to the message log, but it didn't work.
David Morrill
  Details E-Mail
ThreeDee
Lost in Space

Posts: 1672
Filters: 112
smile:eek: Scripting! smile:eek:

This is just the best thing you could have possibly added to the program!

No more "I wish there was a _____ -component" days. Just make it yourself!

Pixel-based, proportionate, no longer a problem...

This is the one thing I've been waiting for (and didn't even know it). smile:D

TD
  Details E-Mail
GMM
Moderator
Filter Forge, Inc
Posts: 3491
Quote
dmorrill wrote:
Right now it doesn't seem like there is any easy way to re-use a script component in another filter


Have you tried Ctrl+C on a component and Ctrl+V in another filter?
  Details E-Mail
dmorrill
Posts: 15
OK, I saw the comment by one of the FF developers about the 'error' function, and that allowed me to find and fix my scripting problem very quickly.

Based on my results so far, here are a few quick tips:

- The x,y values passed to your get_sample function may not be in the range (0..1), so be sure your code handles those cases correctly. In my case, I was seeing values like: -0.005 and 1.005, which is probably caused by FF's anti-aliasing supersampling logic.

- You can use the 'error( string )' function to display 'string' in the FF message log. It has the additional side effect of displaying the line # containing the 'error' call as well as terminating the script's execution (so you can't use it to log trace data).

- To get around the small scripting window in the FF beta, I've been using an external editor and using the Ctrl-A/Ctrl-C and Ctrl-A/Ctrl-V key combos to move the code quickly from the external editor to FF.
David Morrill
  Details E-Mail
Vladimir Golovin
Administrator
Posts: 3446
Filters: 55
David, I'd advice to post tips like these in the Scripting forum.
  Details E-Mail
dmorrill
Posts: 15
Quote
GMM wrote:
Have you tried Ctrl+C on a component and Ctrl+V in another filter?


Well, that does work OK, but I hope that there will be a better solution than this eventually since the work flow does seem to require quite a few steps.

I understand that this is a brand new feature, so there is probably still more work to be done. At a minimum, I hope you can add the ability to replace the component title of 'Map Script' with a user specified one (and maybe change the component title background to a different color to visually indicate that it is a script). Right now, it can be confusing to have several script components in the same filter, all with different inputs.
David Morrill
  Details E-Mail
dmorrill
Posts: 15
Quote
Vladimir Golovin wrote:
David, I'd advice to post tips like these in the Scripting forum.


OK, will do so from now on. Thanks...
David Morrill
  Details E-Mail

Join Our Community!

Filter Forge has a thriving, vibrant, knowledgeable user community. Feel free to join us and have fun!

33,718 Registered Users
+8 new in 7 days!

153,540 Posts
+9 new in 7 days!

15,348 Topics
+71 new in year!

Create an Account

Online Users Last minute:

25 unregistered users.