v7 beta documentation in progress. v7 beta documentation may be incomplete or inaccurate.
v7 functions and features may be significantly different from previous ACS versions.
These instructions are not valid for current v6+ ACS!
Paintjob Add-On Kit is now available at my shop
http://slurl.com/secondlife/Panhead/119/184/22
Purchase through the special vendor with your Owner's Group Tag activated. Future updates will be distributed to purchasers free of charge.
Paintjob is a special add-on system for ACS v7. It is not compatible with older versions of the ACS/KCP scripts.
In order to create paint jobs for your vehicles you will need the no-transfer Paintjob Recording Tool which is available in the Paintjob Add-On Kit available for purchase at my in-world shop for L$500:
http://slurl.com/secondlife/Panhead/119/184/22
The kit also includes the paint can scripts, and example sculpted paint can object and map and textures. You can use the included objects or place the paint can scripts inside your own object.
Before purchasing, carefully read the instructions below to understand how it works and what the limitations are.
Purchasers will also be entitled to free future updates of the Paintjob system.
Paintjob setup functions require the v7 Mechanic HUD . v7 also includes the Paintjob root script which you can add to your vehicle so that if in the future you decide to create a paintjob for that vehicle, it will already be compatible with the system.
The Paintjob system allows you to create an all new color, texture and shine skin for all prim faces of a completed v7 vehicle, store it in a paint can, and distribute that paint can to owners of that vehicle.
The vehicle owner can then apply that Paintjob to a copy of their vehicle from the paint can. The paint can is re-usable, so a vehicle owner can easily switch between paint jobs if they have multiple different paint cans.
The Paintjob system was specifically designed to allow vehicle builders to distribute/give/sell additional full texture skins along with, or in later addition to, a specific vehicle. Include these additional Paintjobs when distributing a vehicle or offer them for sale as a later upgrade.
Paintjob is fully independent of other v7 graphics systems such as ColorSystem, PaintSystem, and KCPaint. None of those systems need to be installed to use Paintjob, but if they are, they can be used to further customize a vehicle after a Paintjob has been applied.
Paintjob has been designed to store data for up to 2048 prim faces (8 faces * 256 links), the maximum amount possible in a single vehicle linkset (under optimum conditions). The vast majority of vehicles won't come close to this requirement.
Because of the huge amount of data a vehicle can contain for an entire graphics set, this kind of full skinning function really needed to be stored in an external unit so that a vehicle is not carrying around large amounts of additional script memory storage.
Paintjob will of course work perfectly fine on much lower prim linksets and legacy vehicle linksets.
Paintjob records prim texture parameters of texture, offsets, repeats, transparency/alpha, color and shine for each prim face in the linkset. It does not store full bright or glow parameters.
Paintjob Scripts & Paint Can
Items used to create a paint job:
- v7 Paintjob script - script goes inside and remains inside the vehicle root, allows vehicle owner to apply recorded paint job.
- +Paintjob Recording Tool - script to place inside the vehicle temporarily for the builder to record/encode a paint job
- empty paint can object - scripted object that stores your paint job, to be distributed to vehicle owners once filled.
- v7 Mechanic HUD
To make a v7 vehicle Paintjob compatible, you must add the v7 Paintjob script to the vehicle root. After that, a Paintjob button will appear in the vehicle Graphics menu. Vehicle owners can prepare a vehicle to receive a Paintjob from a paint can by pressing this button.
The paint can object contains the scripts that store the paint job. You are free to use the example included paint can prim for this. (Includes sculpt map and textures) Or, you may wish to place the paint can scripts in your own prim object.
You will then take a version of your vehicle with the desired textures/shine/colors set up and then record these settings into an empty paint can. To do this you will need to drop the +Paintjob Recording Tool script into the vehicle, then use the Mechanic HUD to transmit/encode the paintjob into the can.
When the transfer is complete, you can rename the paint can and distribute it to vehicle owners so they can apply the paintjob to their vehicle.
The +Paintjob Recording Tool removes itself from vehicle inventory after recording a paint job.
The paint can will only work on a vehicle owned by the paintcan object owner.
To create a paintjob for a vehicle and store it, you must be the owner of both a v7 Mechanic HUD and a
copy of the no-transfer +Paintjob Recording Tool.
Vehicle Owner end-use Instructions
- Rez a filled paint can next to the vehicle.
- From the vehicle Graphics menu choose Paintjob, a floating text message "Waiting for Paintjob…" will appear over the vehicle in floating text.
- Touch the paint can and choose SEND from its pop-up menu.
- Wait for paint job to be applied.
Builder Setup (recording a paint job)
- Place/inject a Paintjob script inside the vehicle (if it is not already in there)
- Place the +Paintjob Recording Tool script inside the vehicle
- Rez a copy of an Empty Paint Can object next to the vehicle.
- Connect the v7 Mechanic HUD to the vehicle and choose Paint Job from the Graphics Menu.
- Touch the Empty Paint Can and choose RECORD from its pop-up menu.
- Then select TRANSMIT PAINTJOB from the Paint Job menu on the v7 Mechanic HUD.
- Wait for the paint job to transfer to the paint can. When complete, rename the paint can.
- The +Paintjob Recording Tool will remove itself from inventory.
After filling a paint can, rename it before taking it back into inventory! You should specify in the name WHICH vehicle it is for and what the paint job is.
Paint Can Permissions & Customizing
It's really up to you what permissions you want to place on your filled paint can, but I suggest setting it to be copyable but non-transferable.
To create your own paint can object, copy all the scripts from an empty paint can into inventory, then place them in your own custom object. There are a lot of scripts inside the paint can object, but they are self-memory-capped, and do not reserve script memory unless in use for storage.
The Paintjob kit includes a full perm sculpted paint can with sculpt map and textures, you can use this can or your own custom object to distribute paint jobs.
Limitations / Things to Know
- You must personally have full permissions on all textures that are stored in a paint can that you record, as the data is stored using texture uuids. The vehicle owner does not need the textures or access to the uuids, only you do in order to record the data and create the paint job.
- Paintjob transmits and stores all data encrypted. This means that nobody can intercept transmitted or stored data, either by spy scripts or channel scanners, and extract texture UUID's. For absolute UUID security, distribute your vehicles as no-modify.
- If the vehicle encounters a non-full perm texture during the recording process, that texture is skipped, however color and shine levels will still be transferred for that particular prim face.
- The painting or paint recording process can take a bit of time if your vehicle has a lot of multi-faced prims. 200+ multi-faced prims could take a few minutes to transfer. For lower prim vehicles, it will be a much shorter process.
- It's fine if you used non-full-permission textures in the original vehicle design (or applied using PaintSystem), however the paint can will simply skip the texture when applying.
- Paintjob works only with ACS v7 (or newer), and uses the special v7 link tracking system that allows you to add or remove links after installing systems (such as DoorSystem or LightSystem) without losing track of link numbers. So you can make changes to a vehicle link set (or add or remove links) after recording a Paintjob and the paint will still apply correctly. Any additional prims not present when the Paintjob was created (or missing prims) will be skipped.
- Paintjob stores and sends texture repeats and offsets. KCPaint and PaintSystem only change the texture and use the prim face's existing offsets and repeats for textures changed by those systems. So be aware that if you change texture repeats and offsets for recording a Paintjob for an existing vehicle, if these changes are applied to a vehicle using KCPaint or PaintSystem, the user will get different graphical results if later making changes using those systems on prims that Paintjob has changed the repeats and offsets of.
- To customize the looping paint can sound, place a single sound file inside the paint can inventory.
- Future versions of ACS will most likely remain compatible with the Paintjob system, so if you update a specific vehicle to a later version of ACS for your customers, pre-recorded Paintjobs for that specific vehicle that you may have already distributed should still function fine. (For example, newer ACS versions have retained compatibility for the sound pack format introduced in v4 in 2010 despite massive system rebuilds since.)
[v7 Main]