Writing with Ink – Runtime Loop

I’ve written an old knock-knock joke into an Ink script to show a basic runtime loop. The logic here is simple: tell a joke three times, but the third time with a different ending.

I define the loop start with an index: joke.

The loop gate has two settings: closed diverts the runtime to the start of the loop, open (or unlocked) allows the runtime to proceed. My start state is closed. On the third try it will open.

CONST punchline = 3 

- (joke) Knock knock! 
+ Who is there? 
- {joke<punchline: 
   Banana. 
   + Banana Who? 
      -> joke 
   - else: 
   Orange. 
   * Orange Who? 
      Orange you glad I didn't say banana? 
}

My conditional test doesn’t use variables, although the loop gate looks as if joke and punchline are variables. Ink is counting how many times the index joke has been seen and comparing it against a constant value called punchline. When joke is less than punchline the loop is closed.

joke<punchline

Things to know:

  • A constant looks like a variable in Ink script, but it isn’t dynamic. At runtime it is replaced with the value it represents. Constants are for scripting convenience.
  • The index cannot be addressed from outside this knot, but leaving and coming back to the knot will preserve the seen count.

Bforartists

Bforartists stands for Be For Artists. A reminder to develop for the user, not the programmer.

Bforartists 1.0 is a fork of the open source 3d software Blender, with the full feature set of Blender 2.8 being represented by icons and a GUI interface, including some 90-odd commands that were previously key-stroke only.

Other interface quirks of Blender – like right-click to select and 4-finger keystrokes, are now more accessible to the casual user and indie artist who must be a jack of all trades.

BforArtist is available for Windows and osX (unbuilt Unix version is available on github)
https://www.bforartists.de

Auto Rig Pro for Blender

Auto-Rig Pro is a set of tools to rig characters, retarget animations, and provide Fbx export for Unity and Unreal Engine.

  • Automatic bone placement solver based on mesh recognition for bipeds characters. Asymmetrical models supported.
  • Edit Reference Bones feature to modify the rig anytime you want. No need to redo everything if a bone is not where you want it to be.
  • Modular: only use what you need. Choose the number of fingers, toes, add optional tail, ears, breasts. Duplicate or remove limbs to rig multi-peds creatures.
  • Fingers auto-rotation option: bend when scaling the first phalange
  • Easy controller shape edition
  • Bone picker: Can be turned on/off, import/export presets. Customizable.
  • Colors customization
  • Cartoon compliant: Stretchy spine, legs, arms…
  • IK-FK snap with autokey working, and snaps properly when unlocking all the leg/forearm rotation axis
  • IK-FK controllers auto hide
  • Hybrid IK pole / IK arrow vector
  • Knees and elbows pinning
  • Head rotation locked or free
  • Bend all fingers in one click (fingers grasp), fist pre-defined pose, auto rotation of fingers phalanges from scale
  • IK/FK eyes
  • Auto-eyelid rotation
  • Multiple Child-Of constraints support for the IK hands and feet to change their parent space any time (e.g. if the character is driving a car, hands on the wheel, then grab the car door)
  • Complete set of secondary controllers for fine pose sculpt
  • Advanced facial setup with automated placement
  • Improved skinning based on Blender’s heatmaps. Auto-splitting of multiple elements. Compliant with the Voxel Heat Diffuse Skinning addon.
  • Shape keys drivers creation tool
  • Game engines support, FBX: Unity – Unreal Engine. Generic, Humanoid and Universal rig type
  • Bone remapper to retarget any armature action to another one, with different bone names and bone orientations. IK support. BVH, FBX files compliant, e.g. Mixamo animations.
  • Compliant with X-Muscle System for realistic muscles simulation

Auto Rig Pro

How to get nude figures in ADOBE FUSE