Вы находитесь на странице: 1из 21

formZ RPC Plugin Users Guide

RPC

October 2007 COPYRIGHT: AutoDesSys, Inc., 2006. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, transcribed, transmitted, or translated into any language in any form by any means without the written permission of AutoDesSys, Inc. TRADEMARKS: formZ, RenderZone, and RadioZity are registered trademarks of AutoDesSys, Inc.
LightWorks is a registered trademark of LightWork Design Limited. ACIS is a registered trademark of Spatial Technology, Inc. Apple, Macintosh, Power Macintosh, and the MacOS logo are registered trademarks or trademarks of Apple Computer, Inc. Microsoft, Windows, and the Windows logo are registered trademarks or trademarks of Microsoft Corporation. All other products mentioned in this document are registered trademarks or trademarks of their respective owners.

RPC

Contents 1 Introduction: What is Rich Photorealistic Content? 2 Installation and setup


2.1 General installation 2.2 Network Render Client installation 3.1 Creating RPC objects 3.2 Creating RPC aids 3.3 Editing RPC objects 3.4 Populating proxies with objects 3.5 Converting objects to proxies 4.1 Basics 4.2 Creating and editing multiple RPC objects at once
4.2.1 Creating proxies 4.2.2 Random transformations 4.2.3 Focus aid 4.2.4 Attractors and repulsors 4 6 6 7

3 Using RPC Features

8 9 0  

4 RPC Tutorial

4.3 Adding motion to RPC objects


4.3.1 Animating 2.5D RPC objects 4.3.2 Animating 3.5D RPC objects

 4 4 6 7 8 9 9 0 

5 Known issues

RPC

1 Introduction
The RPC plugin for formZ (Windows version 6.1.0 and higher) enables Archvisions RPC (Rich Photorealistic Content) product to be used in formZ. It allows the user to place realistic looking entities, such as people, furniture or cars without the overhead of a large number of polygons and excessive texture maps. This is achieved by using a set of photographed images and textures to generate a realistic image of each object. The RPC tools provide easy ways to create massive numbers of objects such as crowds, forests and parking lots. The plugin comes with a set of sample RPC content. Additional content can be acquired from Archvision (www. archvision.com). The plugin adds a new object type to formZ referred to as an RPC object. The RPC object is a reference to an instance of RPC content or one of four types of RPC aids used to construct a scene full of RPC content. The plugin adds five tools to formZ for placing and modifying RPC objects. In formZs non-realistic rendering modes, such as wireframe, RPC objects are displayed in a preview fashion using a rough outline of the object. When the RenderZone rendering mode is selected, the full rendered image of the RPC object is shown in the scene. There are 5 varieties of RPC content. Each hase different characteristics as follows: 2D: A 2D RPC object always shows the same rendered image, regardless of how the camera is oriented (see Figure 1.1.1). That is, the image will always look the same regardless of the viewers orientation. 2.5D: This is the same as a 2D RPC object, except it can be animated. For example, it may show two people having a conversation. 3D: This type of RPC object is the same as the 2D RPC, but the image changes based on the camera location. For example, in one view, the rendered RPC may show the front of a person. If the camera is rotated 180 degrees, the image will show the back of the person. (Figure 1.1.2)

Figure 1.1.1: A 2D RPC object shown in (a) Wireframe and (b) RenderZone.

3.5D: This is the same as a 3D RPC object, except it can be animated. For example, you can show a walking person and rotate the camera during the animation to see the back of the walking person. 4 RPC

b a Figure 1.1.2: A 3D RPC object shown from the front and back in (a) Wireframe and (b) RenderZone.

3D+ (SMART): Unlike the previous types, which use a flat polygon with a mapped photographic texture at rendering time, the 3D+ type actually uses a true 3D polygon mesh, both as a preview and in RenderZone. The RenderZone mesh is usually more detailed and also maps a series of photographic textures on the mesh to give it a realistic look (Figure 1.1.3).

The RPC interface dialogs used by the formZ RPC tools are supplied by Archvision and look a bit different than a standard formZ dialog. These same dialogs can also be found in other applications that have adopted the RPC technology. A more detailed description of the formZ RPC tools can be found in the following sections of this document. Archvision also provides details about its interface through its own electronic help interface. This help can be invoked by pressing the Help button in any of the RPC dialogs. This help environment describes features of RPC and its related dialogs, but does not contain information about the formZ RPC tools. The help file can be accessed also by navigating to the plugins folder of your formZ installation, and opening the file RPC.cmh in the RPC folder.

RPC

Figure 1.1.3: A 3D+ (SMART) RPC object shown in (a) Wireframe and (b) RenderZone.

2 Installation and setup


2.1 General installation
The RPC technology and formZ RPC plugin are currently only supported by Archvision on the 32 bit Windows platform. The formZ RPC plugin is compatible with formZ 6.1.0 or later. To install the formZ RPC Plugin v6.0, run the installation program Install RPC Plugin.exe and follow the prompts. This installer will put two items in place: the plug-in and sample RPC content. The content contains RPC objects and images. (The default directory for RPC content is (Application Directory)/Plugins/RPC/RPC Samples.) If you do not wish to install the sample content, please use the installer Install RPC Plugin Solo.exe instead, which will install the plugin, but does not install the sample RPC files. By default these installers will install the plugin in the directory where your most recent formZ version was installed. The next step is to install the ACM (Archvision Content Manager). The ACM is a stand-alone application that can run locally or on another machine on the network. The ACMs function is to provide the plugin with the location to the RPC content. You can use the provided ACM installer or go to the Archvision website for the latest version of the ACM (www.archvision.com) When using the RPC plugin for the first time, it will most likely not be able to find any RPC content, even if the content has already been installed. The ACM needs to be directed to the content. The plugin finds content in one of two ways: It connects to the ACM, which directs the plug-in to the content. This is the recommended method. If the ACM is not available or is unable to run, the plugin will use a default path (Application Directory)/Plugins/RPC/RPC Samples). This path can be changed: Press the Select RPC Content Path button in the RPC Object tool options window. Select the directory where the RPC content is located. When the plugin starts, it will try to connect either locally or via the network to the ACM depending on the settings saved in the RPCapi.ini file. The RPCapi.ini file contains the location of the ACM executable and is generated automatically. To generate the RPCapi.ini file: Inside formZ, select the RPC Object tool. From the RPC selector interface, click the Configure Content button. Go to the Update tab. If the desired behavior is to have the ACM run on the local machine then click on the Local radio button, then browse for the location of the ACM executable. When the RPC Object tool is selected in the future, the plugin will automatically start and connect to the ACM (if it is not already started). If you want to connect to an ACM already running on another machine click on the Network radio button and enter the address and port. Click on the Update button, this will update the settings and save to the RPC.ini file. 

RPC

2.2 Network Render Client installation


In order to render formZ files containing RPC objects, it will be necessary to install the RPC plugin on each of the client machines. This can be done by copying the RPC folder from the plugins folder inside the formZ application to the plugins folder of the formZ Render Client. Refer to the C:\Program Files\ArchVision\ArchVision Content Manager\ACM.chm help file under the Network Rendering section for more details. Finally, on each of the client machines, open the file RPCapi.ini and modify the location of the ACM, typically this will involve setting the IP address to point to the RPC content server machine which is running the ACM. Each time the ACM location is changed this .ini file will need to be modified on each of the client machines.

RPC

3 RPC Tools
3.1 Creating RPC objects
RPC Object The RPC Object tool is used to place an RPC object into the modeling environment. After selecting the tool, the RPC object is placed by clicking on the desired location in the modeling window. The RPC object is created perpendicular to the currently active reference plane with the origin of the RPC content placed at the click point. The dimensions of the RPC object can be fixed or created dynamically. The construction method is controlled by options in the RPC Object Options dialog, shown in Figure 3.1.1. Construction Method: The options in this group specify the manner in which the RPC object is sized and oriented. Fixed: A single click determines the location, rotation and scale of the content. The object is oriented at a zero degree rotation (aligned to the X axis of the reference plane). The real-world dimensions of the RPC content are used to determine the scale of the RPC object.

Figure 3.1.1: The RPC Object Options dialog.

Dynamic Rotation: The first click determines the location of the object. The second click determines the orientation. The scale is set by the content as with the Fixed option. Dynamic Rotation and Scale: The first click determines the location of the object. The second click determines the orientation and scale. Select RPC Content Path: This button allows one to select the directory in which RPC content files are located. It has no effect if the ACM is running. The remainder of the dialog is used to select content and set to content-specific options. For further details on the function of this dialog, please refer to the Archvision electronic help. The Help button invokes the RPC electronic manual.

RPC

3.2 Creating RPC aids


RPC Aid An RPC aid is a special RPC object with no content. There are four types of RPC aids: proxy, focus, attractor, and repulsor. A proxy is a place-holder that can be filled with content. The other types of aids are used to effect other RPC objects. These aids are primarily used by the Mass Populate tool described in section 3.4. After selecting the tool, an RPC aid is placed by clicking on the desired location in the modeling window. The RPC aide is created perpendicular to the currently active reference plane with the origin of the RPC aid placed at the click point. The dimensions of the RPC aid can be fixed or created dynamically. This is controlled by options in the RPC Aid Options dialog, shown in Figure 3.2.1. Construction Method: These options are identical to those in the RPC Object Options dialog. RPC Aid Type: Four types are contained in this group, as follows. Proxy: A place holder. Proxies are filled with content using the Mass Populate tool. Focus: When populating proxies with content, nearby RPC objects can be made to rotate toward a focus. Attractor: Effects the placement of RPC objects into proxies. The Mass Populate tool will randomly distribute RPC objects and empty spaces into proxies. An attractor will make it more likely nearby proxies will be filled with RPC objects, rather than empty spaces.
Figure 3.2.1: The RPC Aid Options dialog.

Repulsor: As with the Attractor, this type effects the placement of RPC objects into proxies. A repulsor will cause nearby Proxies to be more likely filled with empty spaces, rather than RPC objects. Strength: Specifies the extent of the effects of focus, attractor and repulsor.

RPC

3.3 Editing RPC objects


RPC Mass Edit This tool is used to adjust the parameters of one or more RPC objects (including aids) at once. It invokes the RPC Mass Edit dialog which lists all selected RPC objects or all the RPC objects in the project. For further details on the function of this dialog, please refer to the Archvision electronic help. The Mass Edit tool is controlled by options in the RPC Object Options dialog, shown in Figure 3.3.1. Selection Method: The options in this group determine which RPC objects are listed in the RPC Mass Edit dialog. Edit Selected: The tool may be executed in either postpick or prepick mode. When using prepick, the Pick tool is used to select any number of RPC objects. Then activate the RPC Mass Edit tool and click anywhere in the graphics window to invoke the Mass Edit dialog. When using postpick, click on one RPC object to edit it. Edit All: A single click anywhere in the modeling window invokes the RPC Mass Edit dialog with all existing RPC objects listed.

Note: The Query tool ( ) is able to query and modify all five types of RPC entities: object, proxy, focus, attractor, repulsor. It is in essence like the Mass Edit tool but only for one at a time and for any type of entity.

Figure 3.3.1: The Mass Edit dialog.

0

RPC

3.4 Creating objects from proxies


RPC Mass Populate This tool converts one or more RPC proxies into RPC objects. This is done through the RPC Mass Populate dialog shown in Figure 3.4.1. For further details on the function of this dialog, please refer to the Archvision electronic help. Unlike the Mass Edit tool, the Mass Populate tool will list all proxies, rather than listing only selected proxies. With the tool active, click in the modeling window to display the Mass Populate Rule Set Editor. Inside the Rule Set Editor window, press the Use Scene Selection button to highlight any pre-picked proxies. Select or deselect proxies by clicking on them in the Proxy Selection window. Using the scroll bar, attractors, repulsors, and focus aids can be accessed toward the bottom of the Mass Populate Rule Set Editor. The desired aids can be toggled by clicking on them.

Figure 3.4.1: The Mass Populate dialog.

RPC



3.5 Converting objects to proxies


RPC Convert Object to Proxy This tool converts an object to a proxy the opposite of the RPC Mass Populate tool. It can be used on any RPC object in the scene. The result is a proxy entity which is indistinguishable from a proxy created directly using the RPC Aid tool. Thus, objects and proxies can be easily converted back and forth. Selection Method: The options in this group determine which RPC objects are converted to a proxy. Convert Picked: The tool may be executed in either postpick or prepick mode. When using prepick, the Pick tool is used to select any number of RPC objects. Then activate the RPC Convert Object to Proxy tool and click anywhere in the graphics window to convert all selected objects. When using postpick, click on one RPC object to convert it. Convert All: A single click anywhere in the modeling window converts all RPC objects to proxies.



RPC

4 RPC Tutorials
In this tutorial, we will cover the general aspects of using the RPC tools. We will start with creating a few RPC objects. After that, the tutorial will show how multiple RPC objects can be created, edited, and converted between types. Last, we will cover animating RPC objects.

4.1 Basics
Creating an RPC object is very simple. Activate the RPC Object tool. Leave Construction Method on Fixed. Select one of the content files in your RPC library. Simply click inside the modeling window to create the RPC object.

When creating objects that should have a certain scale, such as people, one will likely want to use either Fixed or Dynamic Rotation. Both of these options keep the height fixed at the scale intended for the particular content. For example, when creating RPC people, if the scale of the object is too different from the real-life dimensions, the results will not look good. On the other hand, when creating trees, the scale should change from tree to tree in order to make them appear more natural. In order to control the scale of an object at creation, change the Construction Method to Dynamic Rotation and Scale. Notice that the first click defines the location of the RPC object. The object will track the location of the mouse while awaiting the second click, rotating and scaling the object in relation to the mouse position. Click a second time to complete the construction of the object.

RPC



4.2 Creating and editing multiple RPC objects at once


One of the most powerful operations in RPC is creating and editing many RPC objects with just a few steps. In this case, we will create a set of proxies. Those proxies will control the positions of the RPC objects, once the proxies have been populated or filled in with RPC content. When populating proxies, one can introduce randomness to many of the aspects of the RPC objects. One can randomly distribute different types of content among the proxies. RPC can randomly leave a percentage of those proxies empty. The attributes of the RPC objects can be randomly set within ranges (like rotation and height), to give a more natural orientation to the objects. RPC Aids can be used to help orient objects when populating proxies. Repulsors cause empty spaces to be more likely nearby their locations. Attractors make it more likely that nearby proxies get filled with content. These aids help to quickly create crowds of people that appear to be looking in certain direction(s). The aids can also help to populate a parking lot so that cars are more likely to be closer to the entrance of a building.

4.2.1 Creating proxies


Create a set of proxies to experiment with some of these features: Activate the RPC Aid tool. Set Construction Method to Fixed. Set RPC Aid Type to Proxy. Click in the modeling window to create the proxy. Use the Move tool in conjunction with Multi-Copy to create an array of proxies.
Figure 4.2.1.1: Array of proxies.

Now that many proxies are built, fill them with content. Activate the Mass Populate tool. 4

Click in the modeling window. The Rule Set Editor will appear. In the highest subwindow, Proxy Selection, click the Select All button. All the proxies will highlight. In the second subwindow down, Content Selection, click Select Content. In the Mass Selection window, put check marks next to the content to be used to fill in the proxies. For now, select one RPC object to use for content. RPC

The percentages shown in the second window can be manually altered to affect how much each content is used relative to the other content. Note the line at the bottom that reads <Empty>. This is the percentage of the proxies that will not be filled with content. This percentage can be altered. It can be set to 0%, if one wants to fill all the proxies with content. In this case, <Empty> is set to 50%. At the bottom of the Rule Set Editor, click the Populate button. Notice the dashes next to the proxy names have been filled with names of content entities. Click Exit. The proxies should now be randomly filled with either content or empty spaces. All the RPC objects will be facing in the direction dictated by the proxies. If the proxies were all facing the same direction, then the RPC objects should all be facing the same direction. There are several ways in which the rotation can be effected. Note: Successive attempts using the Mass Populate tool may show <Empty> in the Populated column. These proxies must first be depopulated (turning the status to --) before the proxies can be filled with other content.

Figure 4.2.2.1: The Rule Set Editor.

Figure 4.2.3.1: The Content Selection window.

RPC



4.2.2 Random transformations


Random transformations can be applied to the RPC objects. Activate the Object to Proxy tool. Choose the option Convert All. Click in the modeling window to convert all the objects back to proxies. Next to the highest subframe, click the Select All button. You may have some proxies with <Empty> listed as their current setting. If so, click the Depopulate button. Using the scroll bar, look down at the bottom of the Rule Set Editor. At the bottom, there is a subwindow called Random Transforms. Highlight Z Rotation.

Activate the Mass Populate tool and click in the modeling window.

Click Add Transform. To the right, set a random range for the RPC objects to be rotated. Step can be used to set an increment for the random transformation. In this case, if the objects should only be rotated in multiples of 10 degrees, Step should be set to 10. Next, click the Populate button to fill in the proxies. Click Exit. The proxies should be populated with randomly facing objects.

Figure 4.2.2.1: The Random transformations window.

Axon View Top View Figure 4.2.2.2: Randomly rotated RPC objects.

6

RPC

4.2.3 Focus aid


Rotation of RPC objects can also be effected using a focus aid. Activate the Object to Proxy tool. Choose the option Convert All. Click in the modeling window to convert all the objects back to proxies.

Notice that the proxies remain facing in random directions. Activate the RPC Aid tool. Select the Focus option.
Figure 4.2.3.1: Focus object

Click in the window to place a focus where the RPC objects should turn to face. Activate the Mass Populate tool and click in the modeling window. Next to the highest subframe, click the Select All button. You may have some proxies with <Empty> listed as their current setting. If so, click the Depopulate button. Scroll down inside the Rule Set Editor to a subwindow called Focus Selection. Place a check mark next to the focus object. Strength can be adjusted so that objects turn fully or partially to face the focus object. There can also be multiple focus objects that compete for the attention of RPC objects. Scroll down to the subwindow called Random Transforms. If the rotation transformation is still shown, click Delete to remove the additional rotation effecting the RPC objects. Next, click the Populate button to fill in the proxies. (There should still be content in the second subwindow.) Click Exit. The RPC objects should be rotated toward the focus.

Figure 4.2.3.2: Focus selection.

RPC

Figure 4.2.3.3: RPC objects turned toward focus.

7

4.2.4 Attractors and repulsors


The relative distribution of empty spaces and RPC content can be effected using attractors and repulsors. Activate the Object to Proxy tool. Choose the option Convert All. Click in the modeling window to convert all the objects back to proxies. Activate the RPC Aid tool. Select the Attractor option. Click in the window to place an attractor in an area where more RPC objects are desired instead of empty spaces. Activate the Mass Populate tool and click in the modeling window. Next to the highest subframe, click the Select All button. You may have some proxies that have <Empty> listed as their current setting. If so, click the Depopulate button. In the second subwindow, Content Selection, change the percentage next to <Empty> to 50%. (Note: if <Empty> is set to 0%, attractors and repulsors have no effect.) Scroll down in the Rule Set Editor to the subwindow Attractor Selection. Place a check mark next to the attractor. Click Populate. Click Exit.

Figure 4.2.4.1: Attractor object.

Figure 4.2.4.2: Set <Empty> to 0%.

Figure 4.2.4.3: Attractor selection.

Attractors and repulsors do not move proxies or objects. They only change the likelyhood of a proxy being filled with content. Notice in Figure 4.2.4.4 the empty spaces tend to be farther away from the attractor and, conversely, the proxies closer to the attractor are more likely to be filled. 8

Figure 4.2.4.4: Results of attractor.

RPC

4.3 Adding motion to RPC objects


Some RPC content is animated. 2.5D objects are basically movies applied to billboards. An example might be two people having a conversation. 3.5D objects not only appear to be 3 dimensional, but also appear to be in motion. One example is a walking person. Another example is rolling wheels on an animated vehicle.

4.3.1 Animating 2D RPC objects


The steps required to animate an RPC object are similar to creating a static RPC object. There is one additional step: setting the current frame of the RPC object to change over time. Activate the RPC Object tool. Select a 2.5D object to add. Notice the window inside the RPC tool options will show a number, 600 in this case, as well as the word Motion. 600 indicates the number of frames in the animation. The animation is 20 seconds long at 30 frames per second and is designed to loop. Place a 2.5D object in the project. Activate the Keyframe tool. Click on the RPC object. Open the Animation Editor and locate the RPC object. Highlight the track labeled Frame Time. Add a keyframe to this track.

Figure 4.3.1.1: 2.5D content.

The values for Frame Time are in units of seconds. Set the keyframe to a time of 20 seconds and a value of 20. Set both keyframe leads to Linear. The RPC object is now ready to be rendered.

Figure 4.3.1.2: Animation Editor.

RPC

9

4.3.2 Animating 3D RPC objects


As with any object in formZ, RPC objects can be animated. When animating certain RPC objects, it is also possible to animate the RPC content. For example, some RPC people are designed to appear as though they are walking. Activate the RPC Object tool. Create a 3D RPC object at the world origin by typing 0,0,0 in the Prompts palette. Make the person point along the Y axis, if it isnt already. Keyframe the person. Open the Animation Editor. Add a second keyframe to the Position Y of the person with a value of 40 at 10 seconds.

Figure 4.3.2.1: 3D content.

If the animation is rendered at this point, the image rendered for the RPC object will not change, giving the appearance the person is sliding across the ground. Make the person walk by keyframing the track Frame Time. RPC people walk at roughly 4 ft/sec (1.22 m/sec) if Frame Time is set to increase 1 unit every second. To make the walking motion work correctly, make a second keyframe in Frame Time at 10 seconds with a value of 10. A walking person could be altered to walk faster or slower by adjusting these values, but too much deviation will cause unrealistic results.

Figure 4.3.2.2: Animation Editor.

0

RPC

5 Known issues
The plugin will attempt to connect to the Archvision Content Manager (ACM). If the ACM is installed and the plugin is configured to run from a local version, the ACM will run automatically. Thus the plugin will see the content provided by the ACM. Regardless of whether the ACM is running, the plugin will also automatically check a default directory for content. This directory is currently set to: (Application Directory)/Plugins/RPC/RPC Samples. If the ACM is not running, only one content folder can be specified using the Select RPC Content button. If the ACM is running, the Select RPC Content button will add one additional content folder to the folder provided by the ACM. There are two methods to specify RPC content paths: 1) through the full ACM program (started by double-clicking on the icon in the task bar) and 2) the RPC Content Configuration dialog (which comes up when the Configure Content button is pressed). The difference is in that the full ACM allows settings to be changed, the other only allows settings to be viewed. The ACM permits the selection of content using the Add Path, Remove Path and the Scan Paths buttons, whereas the RPC Content Configuration dialogs Force The ACM To Rescan Its Paths checkbox and Update button only reflect the content set in the full ACM program. The Change Filter button inside the RPC Object tool is unused and will be removed in future versions of formZ. Cast Shadows inside the RPC Object tool is disabled. Most content have shadows built into the image map that cannot be turned off. RPC vehicle objects CAN cast shadows. This must be turned on by querying the objects parameters. Certain RPC content CDs include a Shadow folder. These are intended to be used to manually create alpha masks. RPC Cars and Vehicles have an attribute labeled Speed to control the rotation rate of the wheels. This feature is not yet implemented. Another attribute called Steering will control the steer angle of the front tires. This works, but currently cannot be animated.

RPC