forked from blender/blender
Fix review comments #51
@ -69,17 +69,16 @@ void CurvesData::update()
|
|||||||
|
|
||||||
pxr::VtValue CurvesData::get_data(pxr::SdfPath const &id, pxr::TfToken const &key) const
|
pxr::VtValue CurvesData::get_data(pxr::SdfPath const &id, pxr::TfToken const &key) const
|
||||||
{
|
{
|
||||||
pxr::VtValue ret;
|
|
||||||
if (key == pxr::HdTokens->points) {
|
if (key == pxr::HdTokens->points) {
|
||||||
ret = vertices_;
|
return pxr::VtValue(vertices_);
|
||||||
}
|
}
|
||||||
else if (key == pxr::HdPrimvarRoleTokens->textureCoordinate) {
|
else if (key == pxr::HdPrimvarRoleTokens->textureCoordinate) {
|
||||||
ret = uvs_;
|
return pxr::VtValue(uvs_);
|
||||||
}
|
}
|
||||||
else if (key == pxr::HdTokens->widths) {
|
else if (key == pxr::HdTokens->widths) {
|
||||||
ret = widths_;
|
return pxr::VtValue(widths_);
|
||||||
}
|
}
|
||||||
return ret;
|
return pxr::VtValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool CurvesData::update_visibility()
|
bool CurvesData::update_visibility()
|
||||||
|
@ -102,11 +102,10 @@ void InstancerData::update()
|
|||||||
pxr::VtValue InstancerData::get_data(pxr::TfToken const &key) const
|
pxr::VtValue InstancerData::get_data(pxr::TfToken const &key) const
|
||||||
{
|
{
|
||||||
ID_LOG(3, "%s", key.GetText());
|
ID_LOG(3, "%s", key.GetText());
|
||||||
pxr::VtValue ret;
|
|
||||||
if (key == pxr::HdInstancerTokens->instanceTransform) {
|
if (key == pxr::HdInstancerTokens->instanceTransform) {
|
||||||
ret = mesh_transforms_;
|
return pxr::VtValue(mesh_transforms_);
|
||||||
}
|
}
|
||||||
return ret;
|
return pxr::VtValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool InstancerData::update_visibility()
|
bool InstancerData::update_visibility()
|
||||||
|
@ -138,23 +138,22 @@ void LightData::update()
|
|||||||
|
|
||||||
pxr::VtValue LightData::get_data(pxr::TfToken const &key) const
|
pxr::VtValue LightData::get_data(pxr::TfToken const &key) const
|
||||||
{
|
{
|
||||||
pxr::VtValue ret;
|
|
||||||
auto it = data_.find(key);
|
auto it = data_.find(key);
|
||||||
if (it != data_.end()) {
|
if (it != data_.end()) {
|
||||||
ret = it->second;
|
return pxr::VtValue(it->second);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
std::string n = key.GetString();
|
std::string n = key.GetString();
|
||||||
if (boost::algorithm::contains(n, "object:visibility:")) {
|
if (boost::algorithm::contains(n, "object:visibility:")) {
|
||||||
if (boost::algorithm::ends_with(n, "camera") || boost::algorithm::ends_with(n, "shadow")) {
|
if (boost::algorithm::ends_with(n, "camera") || boost::algorithm::ends_with(n, "shadow")) {
|
||||||
ret = false;
|
return pxr::VtValue(false);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
ret = true;
|
return pxr::VtValue(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return ret;
|
return pxr::VtValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool LightData::update_visibility()
|
bool LightData::update_visibility()
|
||||||
@ -169,38 +168,32 @@ bool LightData::update_visibility()
|
|||||||
|
|
||||||
pxr::TfToken LightData::prim_type(Light *light)
|
pxr::TfToken LightData::prim_type(Light *light)
|
||||||
{
|
{
|
||||||
pxr::TfToken ret;
|
|
||||||
switch (light->type) {
|
switch (light->type) {
|
||||||
case LA_LOCAL:
|
case LA_LOCAL:
|
||||||
case LA_SPOT:
|
case LA_SPOT:
|
||||||
ret = pxr::HdPrimTypeTokens->sphereLight;
|
return pxr::TfToken(pxr::HdPrimTypeTokens->sphereLight);
|
||||||
break;
|
|
||||||
|
|
||||||
case LA_SUN:
|
case LA_SUN:
|
||||||
ret = pxr::HdPrimTypeTokens->distantLight;
|
return pxr::TfToken(pxr::HdPrimTypeTokens->distantLight);
|
||||||
break;
|
|
||||||
|
|
||||||
case LA_AREA:
|
case LA_AREA:
|
||||||
switch (light->area_shape) {
|
switch (light->area_shape) {
|
||||||
case LA_AREA_SQUARE:
|
case LA_AREA_SQUARE:
|
||||||
case LA_AREA_RECT:
|
case LA_AREA_RECT:
|
||||||
ret = pxr::HdPrimTypeTokens->rectLight;
|
return pxr::TfToken(pxr::HdPrimTypeTokens->rectLight);
|
||||||
break;
|
|
||||||
|
|
||||||
case LA_AREA_DISK:
|
case LA_AREA_DISK:
|
||||||
case LA_AREA_ELLIPSE:
|
case LA_AREA_ELLIPSE:
|
||||||
ret = pxr::HdPrimTypeTokens->diskLight;
|
return pxr::TfToken(pxr::HdPrimTypeTokens->diskLight);
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
default:
|
||||||
ret = pxr::HdPrimTypeTokens->rectLight;
|
return pxr::TfToken(pxr::HdPrimTypeTokens->rectLight);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
ret = pxr::HdPrimTypeTokens->sphereLight;
|
return pxr::TfToken(pxr::HdPrimTypeTokens->sphereLight);
|
||||||
}
|
}
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace blender::render::hydra
|
} // namespace blender::render::hydra
|
||||||
|
@ -74,14 +74,13 @@ void MaterialData::update()
|
|||||||
|
|
||||||
pxr::VtValue MaterialData::get_data(pxr::TfToken const &key) const
|
pxr::VtValue MaterialData::get_data(pxr::TfToken const &key) const
|
||||||
{
|
{
|
||||||
pxr::VtValue ret;
|
|
||||||
if (key == scene_delegate_->settings.mx_filename_key) {
|
if (key == scene_delegate_->settings.mx_filename_key) {
|
||||||
if (!mtlx_path_.GetResolvedPath().empty()) {
|
|
||||||
ret = mtlx_path_;
|
|
||||||
}
|
|
||||||
ID_LOG(3, "%s", key.GetText());
|
ID_LOG(3, "%s", key.GetText());
|
||||||
|
if (!mtlx_path_.GetResolvedPath().empty()) {
|
||||||
|
return pxr::VtValue(mtlx_path_);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return ret;
|
return pxr::VtValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
pxr::VtValue MaterialData::get_material_resource() const
|
pxr::VtValue MaterialData::get_material_resource() const
|
||||||
|
@ -86,17 +86,16 @@ void MeshData::update()
|
|||||||
|
|
||||||
pxr::VtValue MeshData::get_data(pxr::SdfPath const &id, pxr::TfToken const &key) const
|
pxr::VtValue MeshData::get_data(pxr::SdfPath const &id, pxr::TfToken const &key) const
|
||||||
{
|
{
|
||||||
pxr::VtValue ret;
|
|
||||||
if (key == pxr::HdTokens->points) {
|
if (key == pxr::HdTokens->points) {
|
||||||
ret = vertices_;
|
return pxr::VtValue(vertices_);
|
||||||
}
|
}
|
||||||
else if (key == pxr::HdTokens->normals) {
|
else if (key == pxr::HdTokens->normals) {
|
||||||
ret = submesh(id).normals;
|
return pxr::VtValue(submesh(id).normals);
|
||||||
}
|
}
|
||||||
else if (key == pxr::HdPrimvarRoleTokens->textureCoordinate) {
|
else if (key == pxr::HdPrimvarRoleTokens->textureCoordinate) {
|
||||||
ret = submesh(id).uvs;
|
return pxr::VtValue(submesh(id).uvs);
|
||||||
}
|
}
|
||||||
return ret;
|
return pxr::VtValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool MeshData::update_visibility()
|
bool MeshData::update_visibility()
|
||||||
|
@ -131,12 +131,11 @@ void WorldData::update(World *world)
|
|||||||
|
|
||||||
pxr::VtValue WorldData::get_data(pxr::TfToken const &key) const
|
pxr::VtValue WorldData::get_data(pxr::TfToken const &key) const
|
||||||
{
|
{
|
||||||
pxr::VtValue ret;
|
|
||||||
auto it = data_.find(key);
|
auto it = data_.find(key);
|
||||||
if (it != data_.end()) {
|
if (it != data_.end()) {
|
||||||
ret = it->second;
|
return pxr::VtValue(it->second);
|
||||||
}
|
}
|
||||||
return ret;
|
return pxr::VtValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
void WorldData::write_transform()
|
void WorldData::write_transform()
|
||||||
|
Loading…
Reference in New Issue
Block a user