Thursday, June 25, 2015

MyAW - Summer PTZ Giveaway - Week 1


Hey, everyone!  We're partnering with MyAW to host a PTZ Giveaway on MyAW throughout the summer!  MyAW is a new social network that opened earlier this week, and is exclusively for ActiveWorlds! PTZ are a currency that you can use within MyAW to redeem for prizes or trade with other users.

Every week, starting on Fridays at midnight VRT (00:00 am) we'll ask our readers to share some of their favorite places that match a particular theme.  You'll need to post the following to our MyAW "AWBuilder" group (must be logged in to view):

  • Coordinates (i.e. AW 0n 0e. World & position at minimum)
  • A screenshot of the build at that location
At the end of the week, we'll pick one of the screenshots at random to win a voucher for 100 PTZ! We'll share all locations submitted on the next week's blog, along with a public announcement of the winner. 

This week's theme is: Forest

Happy exploring, and good luck!

Sunday, June 21, 2015

Facades - Transparent Windows in a Solid Wall

Today I'd like to share a very old trick -- likely a bug, honestly -- in a particular texture mask that has been used in AlphaWorld for over a decade to create windows. 


Stone1m is a very useful mask that leaves the texture unchanged except when a transparent surface is placed in front of the masked object -- the rendered area of the masked object then itself is rendered as transparent. Here's a screenshot from another angle that shows this clearly:


 As I said, this is very useful to create windows on facades that are very inexpensive users of cell space.  To demonstrate, I'll share another facade for a building I completed in Elkins Beach this week.

We start with the base selection of objects:


For this facade, we want a simple wall panel to cover the entire span of the wall. This piece will contain the stone1m masked texture, and  the windows will be placed on it.  We also want a transparent object -- winb2.rwx is a rectangular window that supports the optional texture "tag" parameter:

Texture the frame:
create texture topgrey tag=1 

Texture the pane:
create texture topgrey tag=200

Finally, we'll use p1rec0005g.rwx to add some depth and break the different levels of the facade apart. So we can arrange the facade objects in the location we want:


And then add textures, masks, and scale:


For a final result of 9 objects:


# Object          Purpose        Action
1 w1pan_1000j.rwx masked surface create texture tv4 mask=stone1m
4 winb2.rwx       windows        create texture topgrey tag=1,scale 3 1 0.1

4 p1rec0005g.rwx  depth/detail   create texture topgrey,scale 1 1 5

With this base facade completed, I replicated it out into a larger rectangular building and added some additional detailing as wall dormers and some street-level shops. The street-level shops are currently complete, but the overall structure is done:



And that's that! Feel free to share your own examples of this technique in the comments! This is a very common technique in AlphaWorld and I enjoy seeing new and creative implementations of it.

Sunday, June 14, 2015

Southern Highlands Progress for Week of June 8, 2015

Working on a new low-rise construction across the road from the last building I featured on the blog.  It is still a work in progress





I like the folding wood structure, as well as the glass. I'm not happy with how the roofing has ended up or with how bulky some of the brick sections of the building are, so I may revamp those later.

The folding wood structure was created with primitives -- p1rec0200b.rwx for the flat horizontal sections, and p1rec0100g.rwx for the vertical sections.  These were scaled to make them look thicker and deeper.

I'm particularly unhappy with the middle open space that you can see very well in the fourth screenshot.  I wanted to make some apartment sorts of areas here, but it's really just coming out bulky and nasty. I'm also hitting a lot of cell space issues trying to accomodate it. That's probably going to be changed -- maybe extending the glass and just having three "floors". 

More later.

Edit: Color helped! Recolored the black windows as cyan. Also removed one of the parts of the middle floor.  May still remove the other...

Monday, May 4, 2015

Workaround for bug introduced in Build 1430 with timer triggers that fire in the same instant

Update 3: Build 1432 has resolved all issues related to timers and things seem back to normal.

Update 2: Users are reporting that some of the issues have been fixed, but not all.  Specifically still seeing issues with timers where the total duration is less than a second.

Update: Build 1431 was just announced to revert changes related to timer limitations. A swift and appropriate response.

---

ActiveWorlds 6.2 Build 1430 was released today and introduced the following change:
  • Timers now have a minimum duration of 1 second and timer-triggers have a minimum interval of 100 ms applied strictly. An attempt to help users and builders not running into heavy lag bombs in worlds.
Which introduced the following bugs:
  • Existing timers that complete under a duration of 1 second are broken -- any lower value is forced by AW to 1 second.
  • Existing looping timers triggers with a total duration of less than 100ms are broken.
  • Triggers scheduled for the same time on the same timer are explicitly ignored. (The workaround below specifically addresses this problem)
  • Remote texturing is broken in many circumstances.
Whoops! These are some really awful bugs and this whole change probably needs to be reverted. The third problem has a pretty simple workaround... simply offset one of the timer triggers.  Note that this only addresses one of the issues introduced today; these bugs have manifested in various ways and this isn't a one-size-fits-all solution to all of the problems created with 1430. This workaround specifically addresses two or more timer triggers that were set to fire at the same instant.

Take two example timers that I found broken today at Fort Masen:

at tm GK 18500, visible reg3 on, visible reg2 off

at tm GK 18500, say "Regina:    Zek'riah!"


I'm not sure how AW determines which trigger gets fired first, but the visible on/visible off one was ignored when I activated the timer to test.  I was able to work around  this very easily, by changing one of the timers to '18510':

at tm GK 18510, visible reg3 on, visible reg2 off

at tm GK 18500, say "Regina:    Zek'riah!"


This is a very small time difference. For timers, 1000 units = 1 second, or 1000 milliseconds.  So 10 units is 10 milliseconds, or 1/100 of a second.  This is probably acceptable for general animations, but I'd still prefer to see this change reverted for more precise timer sequences that need extremely granular triggers.

Interested in hearing further comments from AWI about exactly how this changed timer behavior. More interested in build 1431 reverting these changes. :)