This documentation reflects AI2-THOR version 2.1.0. For the latest AI2-THOR documentation, visit ai2thor.allenai.org.

Material Properties

Some objects have Material Properties that do not have an Action directly associated with them. These properties cannot be directly manipulated- they only update based on contextual interactions with other sim objects or the environment.

  • Temperature - All objects now have an abstracted Temperature value that can be either Hot, Cold, or Room Temperature.
  • ChangeTemp - These objects can change the Temperature value (Hot, Cold, Room Temp) of other sim objects depending on if the ChangeTemp object is a Heat or Cold source. For example, objects placed on a turned on Stove Burner will have their tempeature changed to Hot automatically. Similarly, objects placed in a Refrigerator object will have their temperature changed to Cold automatically. Objects removed from either a Hot or Cold source will return to Room Temperature over time. See the Temperature actions for more details.
  • Mass - All Pickupable objects have a mass value in Kilograms. Using actions like Throw will realistically cause behavior that is reliant on different mass (ie: Throwing a 0.1kg object with 100 newtons of force will fly farther than Throwing a 200kg object with 100 newtons of force). Note the mass of objects that spawn from other objects is persistant (ie: A source Potato that has a mass of 0.5 kg, when Sliced would result in slices that add up to 0.5 kg total).
  • Salient Materials - All Pickupable objects have a set of Salient Materials which describe what the object is made up of. Salient materials include: Metal, Wood, Plastic, Glass, Ceramic, Stone, Fabric, Rubber, Food, Paper, Wax, Soap, Sponge, Organic. Check any object’s Metadata to see what Salient Materials it has, as objects in the same object type category can vary in composition (ie: Bowls can be Plastic, Glass, or Ceramic).
  • Inherited - Some sim objects are created from a source sim object after certain actions. For example, PotatoSliced objects are generated after a Potato object has had the Slice action used on it. Inherited objects inerit the UniqueID of their source object. So if Potato|1|1|1| was sliced, it would result in multiple slices Potato|1|1|1|Slice_1, Potato|1|1|1|Slice_2, etc. Inherited UniqueIDs also apply to objects that are parts of other objects(ie: Sink|1|2|3| would contain a SinkBasin sim object called Sink|1|2|3|SinkBasin). This is to differentiate interacting with the Sink or the interior basin of the sink, as sometimes objects want to be placed on the edge/surface of a Sink instead of the actual basin. This column lists the Object type and Action used to result in the Inherited object type (Slice(Potato)) or the Object Type that it is a part of (Bathtub for BathtubBasin).
  • Contextual - Some objects are able to contextually affect the state or behavior of other sim objects. For example, turning on a Microwave with a Potato in it will automatically change the Cooked state of the Potato. Many contextual interactions are limited to specific object types. The details of the interaction are listed in this column.
Object Type Temperature ChangeTemp Mass SalientMaterials Inherited Contextual
AlarmClock YES no YES YES no no
Apple YES no YES YES no no
AppleSliced YES no YES YES Slice(Apple) no
ArmChair YES no no no no no
BaseballBat YES no no no no no
BasketBall YES no no no no no
Bathtub YES no no no no no
BathtubBasin YES no no no Bathtub no
Bed YES no no no no no
Blinds YES no no no no no
Book YES no YES YES no no
Boots YES no YES YES no no
Bottle YES no YES YES no Will break if subjected to enough force. Will fill up with water if moved underneath a running water source.
Bowl YES no YES YES no Will automatically break if subjected to enough force. Not all bowls are breakable (Plastic-Unbreakable vs Glass-Breakable vs Ceramic-Breakable). If empty, will fill up with water if moved underneath a running water source. If in the Dirty state, will automatically become Clean if moved under running water.
Box YES no YES YES no no
Bread YES no YES YES no When Sliced, will create multiple BreadSliced objects and one large Bread endpiece object.
BreadSliced YES no YES YES Slice(Bread) Use PutObject action to place BreadSliced into Toaster objects. If the Toaster is on, the BreadSliced will automatically cook. BreadSliced will also automatically cook if moved over an active StoveBurner object.
ButterKnife YES no YES YES no no
Cabinet YES no no no no no
Candle YES no YES YES no Can be lit using the ToggleObjectOn action. If another source of flame (another Candle or a Stove Burner) touches the wick, the Candle will automatically be lit and turn on. If the wick of the Candle touches a source of water, then the Candle will automatically be put out and turned off.
Cart YES no no no no no
CD YES no YES YES no no
CellPhone YES no YES YES no Will automatically break if subjected to enough force. When broken, the CellPhone’s screen will appear cracked and the On/Off state will be switched to Off. Broken CellPhones will no longer be able to turn on with ToggleObjectOn.
Chair YES no YES no no no
Cloth YES no YES YES no If in the Dirty state, will automatically become Clean if moved under running water.
CoffeeMachine YES YES no no no Coffee Machines are receptacles but only allow objects of type Mug to be placed in them. If a Coffee Machine is On and an empty Mug is placed in it, the Mug will automatically fill with Coffee and have its Temperature changed to Hot
CoffeeTable YES no no no no no
CounterTop YES no no no no no
CreditCard YES no YES YES no no
Cup YES no YES YES no Will automatically break if subjected to enough force. Not all Cups are breakable (Plastic-Unbreakable vs Glass-Breakable vs Ceramic-Breakable). If empty, will fill up with water if moved underneath a running water source. If in the Dirty state, will automatically become Clean if moved under running water.
Curtains YES no no no no no
Desk YES no no no no no
DeskLamp YES no no no no no
DiningTable YES no no no no no
DishSponge YES no YES YES no no
Drawer YES no no no no no
Dresser YES no no no no no
Egg YES no YES YES no Using the Slice action or the Break action will change the Egg to an EggCracked object. Dropping or Throwing the Egg with enough force will also automatically Break the egg into an EggCracked.
EggCracked YES no YES YES Slice(Egg) or Break(Egg) Placing an EggCracked object onto an active StoveBurner will automatically cook it. Placing an EggCracked object into a Microwave, and then turning on the Microwave will automatically cook it.
Faucet YES no no no no Can be turned on with ToggleObjectOn action. When on, a stream of running water will pour out from the faucet spout. If the Faucet is over a Sink or a Bathtub, the interior of the Sink/Bathtub will fill with standing water. For objects that can be automatically cleaned, the stream of water is a Running Water Source
FloorLamp YES no no no no no
Footstool YES no no no no no
Fork YES no YES YES no no
Fridge YES YES no no no Objects placed in a Fridge will have their temperature automatically changed to Cold
GarbageCan YES no no no no no
HandTowel YES no YES YES no no
HandTowelHolder YES no no no no HandTowelHolders are recptacle objects, but only allow HandTowel type objects to be placed on them.
HousePlant YES no no no no Will fill up with water if moved underneath a running water source.
Kettle YES no YES YES no Will fill up with water if moved underneath a running water source.
KeyChain YES no YES YES no no
Knife YES no YES YES no no
Ladle YES no YES YES no no
Laptop YES no YES YES no Will automatically break if subjected to enough force. When broken, the Laptop’s screen will appear cracked and the On/Off state will be switched to Off. Broken Laptops will no longer be able to turn on with ToggleObjectOn, but they can still be opened or closed with OpenObject or CloseObject.
LaundryHamper YES no no no no no
LaundryHamperLid YES no no no no no
Lettuce YES no YES YES no When Sliced, will create multiple LettuceSliced objects.
LettuceSliced YES no YES YES Slice(Lettuce) no
LightSwitch YES no no no no no
Microwave YES YES no no no Any objects inside a Microwave while it is turned On will have their temperature changed to Hot. Some object will also automatically cook (Potato, Egg). Microwaves cannot be turned on if they are open, and cannot be opened if they are currently on.
Mirror YES no no no no Will automatically break if subjected to enough force.
Mug YES no YES YES no Will automatically break if subjected to enough force. Not all Mugs are breakable (Plastic-Unbreakable vs Glass-Breakable vs Ceramic-Breakable). If empty, will fill up with water if moved underneath a running water source. If in the Dirty state, will automatically become Clean if moved under running water. If empty and placed in a CoffeeMachine that is on, will automatically fill with Coffee and have temperature changed to Hot
Newspaper YES no YES YES no no
Ottoman YES YES no no no no
Painting YES no no no no no
Pan YES no YES YES no If in the Dirty state, will automatically become Clean if moved under running water.
PaperTowel YES no YES YES no no
Pen YES no YES YES no no
Pencil YES no YES YES no no
PepperShaker YES no YES YES no no
Pillow YES no YES YES no no
Plate YES no YES YES no Will automatically break if subjected to enough force. Not all Mugs are breakable (Plastic-Unbreakable vs Glass-Breakable vs Ceramic-Breakable). If in the Dirty state, will automatically become Clean if moved under running water.
Plunger YES no YES YES no no
Poster YES no no no no no
Pot YES no YES YES no If empty, will fill up with water if moved underneath a running water source. If in the Dirty state, will automatically become Clean if moved under running water.
Potato YES no YES YES no Will automatically be Cooked if placed over an active Stove Burner or in a turned on Microwave. When Sliced, will create multiple PotatoSliced objects. Cooking the Potato first and then Slicing it will result in Cooked PotatoSliced objects.
PotatoSliced YES no YES YES Slice(Potato) Will automatically be Cooked if placed over an active Stove Burner or in a turned on Microwave.
RemoteControl YES no YES YES no no
Safe YES no no no no no
SaltShaker YES no YES YES no no
ScrubBrush YES no YES YES no no
Shelf YES no no no no no
ShowerCurtain YES no no no no no
ShowerDoor YES no no no no Will automatically break if subjected to enough force.
ShowerGlass YES no no no no Will automatically break if subjected to enough force.
ShowerHead YES no no no no Can be turned on with ToggleObjectOn action. When on, a stream of running water will pour out from the Shower Head. For objects that can be automatically cleaned, the stream of water is a Running Water Source.
SideTable YES no no no no no
Sink YES no no no no no
SinkBasin YES no no no Sink no
SoapBar YES no YES YES no no
SoapBottle YES no YES YES no no
Sofa YES no no no no no
Spatula YES no YES YES no no
Spoon YES no YES YES no no
SprayBottle YES no YES YES no no
Statue YES no YES YES no Will automatically break if subjected to enough force.
StoveBurner YES YES no no no While this object type can be turned on/off, the ToggleObjectOn and ToggleObjectOff actions will not work on it directly. All StoveBurners are controlled by the on/off state of a StoveKnob object. Turning on/off the StoveKnob will automatically turn on/off the StoveBurner that it is linked to. Objects placed over an active StoveBurner will have their temperature changed to Hot. Some objects can be automatically cooked over an active StoveBurner (Potato, BreadSliced). StoveBurners are receptacles but only allow objects of type Pot, Pan, and Kettle to be placed on them directly. StoveBurners are also sources of fire and can light Candles if the wick of the candle is moved over the burner
StoveKnob YES no no no no All StoveKnobs control the on/off state of themselves and a StoveBurner.
TeddyBear YES no YES YES no no
Television YES no no no no Will automatically break if subjected to enough force. When broken, the Television’s screen will appear cracked and the On/Off state will be switched to Off. Broken Televisions will no longer be able to turn on with ToggleObjectOn.
TennisRacket YES no YES YES no no
TissueBox YES no YES YES no no
Toaster YES YES no no no Toasters are receptacles but only allow BreadSliced objects to be placed in them. Any BreadSliced object in a Toaster that is turned on will automatically be Cooked.
Toilet YES no no no no no
ToiletPaper YES no YES YES no no
ToiletPaperHanger YES no no no no ToiletPaperHangers are receptacles but only allow ToiletPaper objects to be placed in them
Tomato YES no YES YES no When Sliced, will create multiple TomatoSliced objects.
TomatoSliced YES no YES YES Slice(Tomato) no
Towel YES no YES YES no no
TowelHolder YES no no no no TowelHolders are receptacles but only allow Towel objects to be placed in them.
TVStand YES no no no no no
Vase YES no YES YES no Will automaticaly break if subjected to enough force.
Watch YES no YES YES no no
WateringCan YES no YES YES no If empty, will automatically fill with water if placed under a running water source.
Window YES no no no no Will automatically break if subjected to enough force.
WineBottle YES no YES YES no Will automatically break if subjected to enough force. If empty, will automatically fill with water if placed under a running water source.

Next Steps

Continue on to the Object Locations documentation to see what object types spawn in which scene categories.