bool Camera::_set(const StringName& p_name, const Variant& p_value) { bool changed_all=false; if (p_name=="projection") { int proj = p_value; if (proj==PROJECTION_PERSPECTIVE) mode=PROJECTION_PERSPECTIVE; if (proj==PROJECTION_ORTHOGONAL) mode=PROJECTION_ORTHOGONAL; changed_all=true; } else if (p_name=="fov" || p_name=="fovy" || p_name=="fovx") fov=p_value; else if (p_name=="size" || p_name=="sizex" || p_name=="sizey") size=p_value; else if (p_name=="near") near=p_value; else if (p_name=="far") far=p_value; else if (p_name=="keep_aspect") set_keep_aspect_mode(KeepAspect(int(p_value))); else if (p_name=="vaspect") set_keep_aspect_mode(p_value?KEEP_WIDTH:KEEP_HEIGHT); else if (p_name=="h_offset") h_offset=p_value; else if (p_name=="v_offset") v_offset=p_value; else if (p_name=="current") { if (p_value.operator bool()) { make_current(); } else { clear_current(); } } else if (p_name=="visible_layers") { set_visible_layers(p_value); } else if (p_name=="environment") { set_environment(p_value); } else return false; _update_camera_mode(); if (changed_all) _change_notify(); return true; }
bool Camera::_set(const StringName& p_name, const Variant& p_value) { bool changed_all=false; if (p_name=="projection") { int proj = p_value; if (proj==PROJECTION_PERSPECTIVE) mode=PROJECTION_PERSPECTIVE; if (proj==PROJECTION_ORTHOGONAL) mode=PROJECTION_ORTHOGONAL; changed_all=true; } else if (p_name=="fov") fov=p_value; else if (p_name=="size") size=p_value; else if (p_name=="near") near=p_value; else if (p_name=="far") far=p_value; else if (p_name=="vaspect") set_use_vertical_aspect(p_value); else if (p_name=="current") { if (p_value.operator bool()) { make_current(); } else { clear_current(); } } else if (p_name=="visible_layers") { set_visible_layers(p_value); } else if (p_name=="environment") { set_environment(p_value); } else return false; _update_camera_mode(); if (changed_all) _change_notify(); return true; }