It is currently Tue Mar 19, 2024 11:57 am


All times are UTC




Post new topic Reply to topic  [ 24 posts ]  Go to page Previous  1, 2, 3  Next
Author Message
PostPosted: Thu Feb 28, 2019 9:54 am 

Joined: Mon Jun 19, 2017 1:51 pm
Posts: 195
However you can edit the camera position, rotation angle and sensor width.


Top
Offline Profile  
 
PostPosted: Thu Feb 28, 2019 10:35 am 

Joined: Wed Feb 27, 2019 4:10 pm
Posts: 22
I can yes, but for example when animating, it's far more better to move camera affine around than moving in main window. That way can change those waypoints and avoid camera doing weird stuff.


Top
Offline Profile  
 
PostPosted: Fri Mar 01, 2019 1:14 am 

Joined: Tue Aug 05, 2014 4:03 pm
Posts: 101
https://docs.google.com/document/d/1JlB ... sp=sharing

Some old chaotica suggestions and requests. Most (if not all) are still valid.


Top
Offline Profile  
 
PostPosted: Fri Mar 01, 2019 5:03 pm 

Joined: Fri Nov 17, 2017 1:47 am
Posts: 8
Windows 10 here. I don't see the Node Editor params by default. Just the Grid window.
1. Run Chaotic 2.0.7
2. Open World
3. Click Window/World Editor
Result - inconsistent. On second attempt to do the, the World Editor opened then the Node Editor opened in a separate window with no parameters. Click in the World editor on an affine and you can see the params for just the Angles and offset but no Transforms.
Something is amiss with the Node Editor displaying all values as before.


Top
Offline Profile  
 
PostPosted: Sat Mar 02, 2019 3:40 pm 

Joined: Sun Sep 02, 2018 3:52 am
Posts: 8
Nick wrote:
Any feedback and bug reports welcome!


I'd love to see some UX and guidance around missing plugins (and how to create them):

Missing Plugins

Pasting in a .chaos file with missing plugins just gives a generic error message about initializing transforms. Ideally, this should be a textbox with a list of missing variation names with a handy "copy to clipboard" button next to it.

Down the road, UX similar to Photoshop's font mapping tool, with best guesses at variable mapping. So if you try to load something with waves3, and it fails, Chaotica would offer to map variables to waves2.

IMO, variations should have an internal author/ID field as well. So on waves2, something like "jwildfire". If there's only one variation with the top-level name ("waves2", here), just show that in the Chaotica world editor dropdown. If there are multiple "waves2", list them as "waves2 (default)", "waves2 (jwildfire)", etc.

Guidance on Writing Plugins

I can see the Winter code in standard_transforms.xml. But questions there:

- How to create/load another .xml file? Like jwildfire_transforms.xml. (My recent stuff all uses a set of JWildfire variations that I've automatically converted, see here for details). Right now, changes will get stomped, and actually on macOS and elsewhere, a new install will stomp that entire folder structure anyway.

- An example post on how to tackle converting existing plugins would be great. Some plugins are quite simple, so that's just a question of where to find a list of Winter math functions. For example, here's the waves3 source, which is barely modified from waves2. I use post_point_symmetry a lot. While simple, it's precomputing and storing angles, using randomization, etc, and I'd take awhile to blindly figure that out.

- What's the workflow like for plugin editing? Close and re-open? Clearly something XML could be hot-reloaded. There must be Winter-related tooling at Glare (syntax highlighters as VSCode plugins, whatever). It'd be neat to see in-Chaotica Winter editing to work on a plugin, with changes reflected as close as possible to "as you type".

_________________
Fractalthew on DeviantArt | Instagram | AutoHintBot on Discord


Top
Offline Profile  
 
PostPosted: Sat Mar 02, 2019 5:12 pm 

Joined: Tue Aug 05, 2014 4:03 pm
Posts: 101
Just in case, i strongly disagree with variable mapping.
Most plugins are not interchangeable, and replacing waves3 with waves2 for instance would just create additional confusion for the user.
Also, even if the plugins are similar, there is the issue with the variables of each.

It is a very bad idea which will just create even more confusion for beginners. Experienced users already know how it works and how to add the correct transform to the mix.


Top
Offline Profile  
 
PostPosted: Sat Mar 02, 2019 5:27 pm 

Joined: Tue Aug 05, 2014 4:03 pm
Posts: 101
As for plugin editing, afaik there is a winter tutorial that can be released anytime.
If this material is somehow lost, I can release a version once Nick & Co say what they prefer.

In short:
- you can only load the standard_transforms.xml for now, i think. All you need is to add the transform code to it. New install don't stomp the changes - just use the portable version.
- As for automatic conversion, I strongly recommend you to check the consistency of whatever you did against the APOPHYSIS originals whenever possible. Many JWF implementations are plain weird and were never properly checked. Many JWF implementations are just duplicates of stuff that already exists. Also, Chaotica handles pre_ and post_ transforms differently from Apophysis and JWF. This basically means that a transform such as "post_point_symmetry" should not exist in chaotica - you should rather code a "point_symmetry", which can be used as pre, regular transform and post, since chaotica allows that. Coding pre_ and post_ transforms will just litter your transform collection with duplicates. Also, as far as i know, chaotica handles those automatically: for example, when you import params with pre_spherical, it is automatically converted into a spherical used as pre transform.
- Winter functions are mostly listed in the "winter_stdlib" file, and some appear in the transform list. If you got questions, you can poke me because while I am not as knowledgeable in winter as the Glare posts, I coded quite a few winter xforms myself.
- Workflow: currently its close and re-open. Also, if you want to write plugins, i strongly suggest that you ask the developers for a beta version that displays the bugs in a little cmd window. Most regular betas don't, so when you write a plugin and it crashes, you will not know the reason of the crash. I know i'm not describing it properly, but can provide the devs with a few screenies of what i mean. For instance, to write and edit plugins, I use and older beta that has it, and then test in the latest beta.


Top
Offline Profile  
 
PostPosted: Sat Mar 02, 2019 7:11 pm 

Joined: Sun Sep 02, 2018 3:52 am
Posts: 8
tatasz wrote:
Just in case, i strongly disagree with variable mapping.


To be clear, I mean something deliberate and not transparent. The Photoshop missing fonts dialog defaults to "do nothing", and is pretty clear that you aren't about to replace things that probably aren't 1-to-1 mappings:

Image

I also don't think this is super important, but in terms of collecting UX improvements around mapping transforms (while the new system is still early), I think it's worthwhile down the road.

_________________
Fractalthew on DeviantArt | Instagram | AutoHintBot on Discord


Top
Offline Profile  
 
PostPosted: Sat Mar 02, 2019 9:54 pm 

Joined: Sun Sep 02, 2018 3:52 am
Posts: 8
Actually, thought about the plugin thing a bit on a ride today. (And I hope this doesn't get lost in some random 2.0.X update thread):

- Plugin management and conflicts are an issue now because plugins are black boxes. Let's say two "whatever.dll" plugins are different sizes. Are they the same logic, but compiled in different Visual Studio versions? Different random library? Or totally different altogether?

- Winter variations are clearbox constructs. And there's no need for dll/so/dylib, and _32 or _64 suffixes (to say nothing of "cuda/opencl/metal/etc" variations)

So variations are now just author-time constructs, and shouldn't really be an environment constraint for future edits. Especially if Winter variations can hotload, I don't see any reason a .chaos file couldn't be extended to:

Code:
<flam3_variation name="Transform 15">
   <string name="variation_name">taurus</string>
   <string name="variation_hash">ea81c441930f14155ce55cacd4e14124222a726e</string>
   <params>
      <real name="taurus">0.6279566625110338</real>
      <real name="taurus_r">3</real>
      <real name="taurus_n">5</real>
      <real name="taurus_inv">1.5</real>
      <real name="taurus_sor">1</real>
   </params>
</flam3_variation>


[... rest of file, and then appended to bottom in a <transform_defs> block]

<transform_def name="taurus" hash="ea81c441930f14155ce55cacd4e14124222a726e">
      <node name="input_params">
         <real name="taurus">1</real>
         <real name="taurus_r" notes="Radius">3</real>
         <real name="taurus_n" notes="Number of petals">5</real>
         <real name="taurus_inv">0</real>
         <real name="taurus_sor" notes="Currently not used in Chaotica">0</real>
      </node>

      <node name="internal_params">
         <real name="weight" />
         <real name="r" />
         <real name="n" />
         <real name="inv" />
         <real name="sor" /> #this parameter is used for z axis in the original
      </node>

      <string name="winter_init_function">
         <![CDATA[
            taurus_init_result(taurus, taurus_r, taurus_n, taurus_inv, taurus_sor)
         ]]>
      </string>

      <string name="winter_eval_function">
         <![CDATA[
            let
               ir = (inv * r) + ((1 - inv) * (r * cos(n * p_in.x)))
            in
               vec2(cos(p_in.x), sin(p_in.x)) * (weight * (ir + sin(p_in.y)))
         ]]>
      </string>
   </transform_def>


So all files get their used variations embedded in them directly. It's not a lot of space.

If you open a file without the right "plugins" already in your global environment, it'll alert you (if you're missing them, maybe just offer to save to your variation library). If you have a name conflict, offer to replace with your global library's version. That's probably best as an icon next to the actual transform in world editor, so it's easy to push the change to the undo stack and see what's actually changing, if anything.

_________________
Fractalthew on DeviantArt | Instagram | AutoHintBot on Discord


Top
Offline Profile  
 
PostPosted: Sun Mar 03, 2019 5:10 pm 

Joined: Wed Feb 13, 2019 3:43 pm
Posts: 7
Hi!

I agree with Tatasz on her old chaotica suggestions and requests post march 01, 2019. There are many valid points in that document.

Allthough good work on so far!


Top
Offline Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 24 posts ]  Go to page Previous  1, 2, 3  Next

All times are UTC


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group
Theme created StylerBB.net