Real-time 3D graphics are being extensively used to build interactive virtual environments for a number of different applications. In many situations, virtual objects are required to exhibit complex behaviors, and the use of a versatile behavioral programming methodology is required. This paper presents a feature modeling approach to define behavioral information of virtual objects, giving special attention to their capabilities of interaction with virtual human actors. The proposed method is based on a complete definition and representation of interactive objects, which are called smart objects. This representation is based on the description of interaction features: parts, movements, graspable sites, functionalities, purposes, etc., including a behavioral automaton based on scripts and graphical state machines