这篇教程C++ DVASSERT函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中DVASSERT函数的典型用法代码示例。如果您正苦于以下问题:C++ DVASSERT函数的具体用法?C++ DVASSERT怎么用?C++ DVASSERT使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了DVASSERT函数的19个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: ColorDetailControl//************* ColorSelectorControl *************ColorSelectorControl::ColorSelectorControl(const Rect &rect) : ColorDetailControl(rect){ RenderManager::Instance()->SetRenderTarget(colorMap); RenderManager::Instance()->SetColor(Color(0.f, 0.f, 0.f, 1.f)); RenderHelper::Instance()->FillRect(Rect(0,0, rect.dx, rect.dy)); SetInitialColors(); float32 sectionHeight = rect.dy / (float32)SECTIONS_COUNT; DVASSERT((0 != sectionHeight) && "Wrong control size"); float32 colorDelta = 1.0f / (sectionHeight); for(int32 dy = 0; dy < (int32)sectionHeight; ++dy) { for(int32 iSection = 0; iSection < SECTIONS_COUNT; ++iSection) { RenderManager::Instance()->SetColor(sections[iSection]); RenderHelper::Instance()->DrawLine(Vector2(0, iSection*sectionHeight + dy), Vector2(rect.dx, iSection*sectionHeight + dy)); } sections[0].b += colorDelta; sections[1].r -= colorDelta; sections[2].g += colorDelta; sections[3].b -= colorDelta; sections[4].r += colorDelta; sections[5].g -= colorDelta; } RenderManager::Instance()->ResetColor(); RenderManager::Instance()->RestoreRenderTarget(); SetInitialColors(); markerPoint.dx = rect.dx / 2;}
开发者ID:abaradulkin,项目名称:dava.framework,代码行数:38,
示例2: DVASSERTvoid GameObjectManager::RealAddObject(GameObject * _object){ if (!_object)return; if (_object->dead) // if object is dead we mark that it should be added on deletion from prev. manager { _object->nextManager = this; return; }else { DVASSERT(_object->GetManager() == 0); } _object->Retain(); //int objectsCount = objects.size(); List<GameObject*>::iterator currentPos = objects.begin(); //Logger::FrameworkDebug("myp: %d/n", _object->GetPriority()); int pos = 0; for (; currentPos != objects.end(); ++currentPos) { GameObject * curObject = *currentPos; if ( curObject->GetPriority() > _object->GetPriority()) { //Logger::FrameworkDebug("op: %d/n", curObject->GetPriority()); break; } pos++; } //Logger::FrameworkDebug("added to pos: %d/n", pos); objects.insert(currentPos, _object); _object->SetManager(this); RecalcObjectHierarchy(_object);}
开发者ID:galek,项目名称:dava.framework,代码行数:36,
示例3: SafeReleasevoid Scene::SetGlobalMaterial(NMaterial *globalMaterial){ SafeRelease(sceneGlobalMaterial); if(NULL != globalMaterial) { DVASSERT(globalMaterial->GetMaterialType() == NMaterial::MATERIALTYPE_GLOBAL); isDefaultGlobalMaterial = false; sceneGlobalMaterial = SafeRetain(globalMaterial); } else { isDefaultGlobalMaterial = true; sceneGlobalMaterial = NMaterial::CreateGlobalMaterial(FastName("Scene_Global_Material")); } InitGlobalMaterial(); renderSystem->SetGlobalMaterial(sceneGlobalMaterial); particleEffectSystem->SetGlobalMaterial(sceneGlobalMaterial); ImportShadowColor(this);}
开发者ID:galek,项目名称:dava.framework,代码行数:24,
示例4: DVASSERTvoid NMaterial::PrepareRenderState(PolygonGroup * polygonGroup, NMaterialInstance * instance){ // if (1) {// shaderArray[0]->Dump(); } Shader * activeShader = shaderArray[instance->GetLightCount()]; DVASSERT(activeShader != 0) instance->renderState.SetShader(activeShader); instance->PrepareInstanceForShader(activeShader); // Bind shader & global uniforms RenderManager::Instance()->FlushState(&instance->renderState); // Here bind local uniforms of material instance->UpdateUniforms(); instance->BindUniforms(); RenderManager::Instance()->SetRenderData(polygonGroup->renderDataObject); RenderManager::Instance()->AttachRenderData();};
开发者ID:boyjimeking,项目名称:dava.framework,代码行数:24,
示例5: DVASSERTvoid HierarchyTreeControlNode::AddControlToParent(){ if (!parent) return; DVASSERT(uiObject); HierarchyTreeScreenNode* screenNode = dynamic_cast<HierarchyTreeScreenNode*>(parent); if (screenNode) { screenNode->GetScreen()->AddControl(this->uiObject); } else { //HierarchyTreeControlNode* controlNode = GetControlNode(); HierarchyTreeControlNode* controlNode = dynamic_cast<HierarchyTreeControlNode*>(parent); if (controlNode) { UIControl* control = controlNode->GetUIObject(); if (control) control->AddControl(this->uiObject); } } }
开发者ID:vilonosec,项目名称:dava.framework,代码行数:24,
示例6: switchvoid Image::FlipVertical(){ switch(format) { case FORMAT_A8: FlipVertical((uint8 *)data, width, height); break; case FORMAT_A16: case FORMAT_RGBA5551: case FORMAT_RGBA4444: case FORMAT_RGB565: FlipVertical((uint16 *)data, width, height); break; case FORMAT_RGBA8888: FlipVertical((uint32 *)data, width, height); break; default: DVASSERT(false && "Not implemented"); break; }}
开发者ID:galek,项目名称:dava.framework,代码行数:24,
示例7: DVASSERTvoid DistanceSlider::SetDistance(int layer, double value){ if(!locked) { DVASSERT(0 <= layer && layer < DAVA::LodComponent::MAX_LOD_LAYERS); stretchSize[layer] = value; int scaleSize = GetScaleSize(); QList<int> sizes; for(int i = 1; i < layersCount; ++i) { sizes.push_back((stretchSize[i] - stretchSize[i-1]) * splitter->geometry().width() / scaleSize); } if(layersCount) sizes.push_back((scaleSize - stretchSize[layer]) * splitter->geometry().width() / scaleSize); bool wasBlocked = splitter->blockSignals(true); splitter->setSizes(sizes); splitter->blockSignals(wasBlocked); }}
开发者ID:galek,项目名称:dava.framework,代码行数:24,
示例8: UIWebViewvoid TransparentWebViewTest::LoadResources(){ webView1 = new UIWebView(Rect(5, 5, 700, 500)); webView1->SetVisible(true); webView1->OpenURL("http://ru.wikipedia.org/"); AddControl(webView1); FilePath srcDir("~res:/TestData/TransparentWebViewTest/"); FilePath cpyDir = FileSystem::Instance()->GetCurrentDocumentsDirectory() + "TransparentWebViewTest/"; FileSystem::Instance()->DeleteDirectory(cpyDir); FileSystem::Instance()->CreateDirectory(cpyDir); FilePath srcFile = srcDir + "test.html"; FilePath cpyFile = cpyDir + "test.html"; FileSystem::Instance()->CopyFile(srcFile, cpyFile); String url = "file:///" + cpyFile.GetAbsolutePathname(); webView2 = new UIWebView(Rect(710, 5, 300, 250)); webView2->SetVisible(true); webView2->SetBackgroundTransparency(true); webView2->OpenURL(url); AddControl(webView2); Font *font = FTFont::Create("~res:/Fonts/korinna.ttf"); DVASSERT(font); font->SetSize(20); testButton = new UIButton(Rect(0, 510, 300, 30)); testButton->SetStateFont(0xFF, font); testButton->SetStateText(0xFF, L"Finish Test"); testButton->SetStateFontColor(0xFF, Color::White); testButton->SetDebugDraw(true); testButton->AddEvent(UIControl::EVENT_TOUCH_UP_INSIDE, Message(this, &TransparentWebViewTest::ButtonPressed)); AddControl(testButton); SafeRelease(font);}
开发者ID:galek,项目名称:dava.framework,代码行数:36,
示例9: BuildPropertiesGridListvoid PropertyGridContainerWidget::OnPropertiesGridUpdated(){ if (PropertiesGridController::Instance()->GetActiveTreeNodesList().empty() == false) { // List of UI Controls is selected. BuildPropertiesGridList(); return; } // Build the Properties Grid based on the active control. const HierarchyTreeNode* activeTreeNode = PropertiesGridController::Instance()->GetActiveTreeNode(); DVASSERT(activeTreeNode); // This code is executed when Screen/Platform are selected. UIControl* activeControl = NULL; const HierarchyTreeControlNode* activeTreeControlNode = dynamic_cast<const HierarchyTreeControlNode*>(activeTreeNode); if (activeTreeControlNode) { activeControl = activeTreeControlNode->GetUIObject(); } BaseMetadata* metaData = GetActiveMetadata(activeTreeNode); BuildPropertiesGrid(activeControl, metaData, activeTreeNode->GetId());}
开发者ID:galek,项目名称:dava.framework,代码行数:24,
示例10: DVASSERTLodSystem::LodMerger::LodMerger(SceneNode * _toEntity){ DVASSERT(_toEntity); toEntity = _toEntity;}
开发者ID:abaradulkin,项目名称:dava.framework,代码行数:5,
示例11: GetSwitchComponentbool SwitchToRenerObjectConverter::MergeSwitch(Entity * entity){ Vector<Entity*> entitiesToRemove; SwitchComponent * sw = GetSwitchComponent(entity); if(sw) { RenderComponent * rc = GetRenderComponent(entity); RenderObject * ro = 0; if(!rc) { ro = new Mesh(); rc = new RenderComponent(ro); ro->Release(); ro->SetAABBox(AABBox3(Vector3(0, 0, 0), Vector3(0, 0, 0))); entity->AddComponent(rc); } else { ro = rc->GetRenderObject(); } DVASSERT(ro); int32 size = entity->GetChildrenCount(); for(int32 i = 0; i < size; ++i) { Entity * sourceEntity = entity->GetChild(i); RenderObject * sourceRenderObject = GetRenderObject(sourceEntity); //workaround for custom properties for crashed model if(1 == i) // crash model { KeyedArchive *childProps = GetCustomPropertiesArchieve(sourceEntity); if(childProps && childProps->IsKeyExists("CollisionType")) { KeyedArchive *entityProps = GetOrCreateCustomProperties(entity)->GetArchive(); entityProps->SetInt32("CollisionTypeCrashed", childProps->GetInt32("CollisionType", 0)); } } //end of custom properties Vector<std::pair<Entity*, RenderObject*> > renderPairs; if(sourceRenderObject) { renderPairs.push_back(std::make_pair(sourceEntity, sourceRenderObject)); } else { FindRenderObjectsRecursive(sourceEntity, renderPairs); DVASSERT(renderPairs.size() == 1); sourceRenderObject = renderPairs[0].second; } if(sourceRenderObject) { TransformComponent * sourceTransform = GetTransformComponent(sourceEntity); if (sourceTransform->GetLocalTransform() != Matrix4::IDENTITY) { PolygonGroup * pg = sourceRenderObject->GetRenderBatchCount() > 0 ? sourceRenderObject->GetRenderBatch(0)->GetPolygonGroup() : 0; if(pg && bakedPolygonGroups.end() == bakedPolygonGroups.find(pg)) { sourceRenderObject->BakeGeometry(sourceTransform->GetLocalTransform()); bakedPolygonGroups.insert(pg); } } uint32 sourceSize = sourceRenderObject->GetRenderBatchCount(); while(sourceSize) { int32 lodIndex, switchIndex; RenderBatch * sourceRenderBatch = sourceRenderObject->GetRenderBatch(0, lodIndex, switchIndex); sourceRenderBatch->Retain(); sourceRenderObject->RemoveRenderBatch(sourceRenderBatch); ro->AddRenderBatch(sourceRenderBatch, lodIndex, i); sourceRenderBatch->Release(); sourceSize--; } } renderPairs[0].first->RemoveComponent(Component::RENDER_COMPONENT); LodComponent * lc = GetLodComponent(sourceEntity); if((0 != lc) && (0 == GetLodComponent(entity))) { LodComponent * newLod = (LodComponent*)lc->Clone(entity); entity->AddComponent(newLod); } renderPairs[0].first->RemoveComponent(Component::LOD_COMPONENT); if(sourceEntity->GetChildrenCount() == 0) { entitiesToRemove.push_back(sourceEntity); } } } uint32 entitiesToRemoveCount = entitiesToRemove.size();//.........这里部分代码省略.........
开发者ID:galek,项目名称:dava.framework,代码行数:101,
示例12: DVASSERTbool FileList::IsDirectory(int32 index) { DVASSERT((index >= 0) && (index < (int32)fileList.size())); return fileList[index].isDirectory;}
开发者ID:droidenko,项目名称:dava.framework,代码行数:5,
示例13: DVASSERTvoid ImposterNode::UpdateState(){ if(GetChildrenCount() > 0) { DVASSERT(GetChildrenCount() == 1); AABBox3 bbox = GetChild(0)->GetWTMaximumBoundingBoxSlow(); Vector3 bboxCenter = bbox.GetCenter(); float32 distanceSquare = (scene->GetCurrentCamera()->GetPosition() - bboxCenter).SquareLength(); distanceSquare *= scene->GetCurrentCamera()->GetZoomFactor() * scene->GetCurrentCamera()->GetZoomFactor(); Vector3 newDirection = scene->GetCurrentCamera()->GetPosition()-center; newDirection.Normalize(); float32 dotProduct = newDirection.DotProduct(direction); switch(state) { case STATE_3D: { if(distanceSquare > TOGGLE_SQUARE_DISTANCE) { UpdatePriority(distanceSquare, 0); AskForRedraw(); } else { isReady = false; } } break; case STATE_QUEUED: { if(IsAngleOrRangeChangedEnough(distanceSquare, dotProduct)) { UpdatePriority(distanceSquare, dotProduct); manager->UpdateQueue(this); } } break; case STATE_IMPOSTER: { if(distanceSquare < TOGGLE_SQUARE_DISTANCE) { isReady = false; state = STATE_3D; manager->RemoveFromQueue(this); break; } if(IsAngleOrRangeChangedEnough(distanceSquare, dotProduct)) { UpdatePriority(distanceSquare, dotProduct); AskForRedraw(); } } break; case STATE_REDRAW_APPROVED: { } break; } }}
开发者ID:vilonosec,项目名称:dava.framework,代码行数:65,
示例14: Cameravoid ImposterNode::UpdateImposter(){ Camera * camera = scene->GetCurrentCamera(); Camera * imposterCamera = new Camera(); Vector3 cameraPos = camera->GetPosition(); Entity * child = GetChild(0); AABBox3 bbox = child->GetWTMaximumBoundingBoxSlow(); Vector3 bboxCenter = bbox.GetCenter(); imposterCamera->Setup(camera->GetFOV(), camera->GetAspect(), camera->GetZNear(), camera->GetZFar()); imposterCamera->SetTarget(bbox.GetCenter()); imposterCamera->SetPosition(cameraPos); imposterCamera->SetUp(camera->GetUp()); imposterCamera->SetLeft(camera->GetLeft()); Rect viewport = RenderManager::Instance()->GetViewport(); const Matrix4 & mvp = imposterCamera->GetUniformProjModelMatrix(); AABBox3 screenBounds; GetOOBBoxScreenCoords(child, mvp, screenBounds); Vector4 pv(bboxCenter); pv = pv*mvp; pv.z = (pv.z/pv.w + 1.f) * 0.5f; float32 bboxCenterZ = pv.z; Vector2 screenSize = Vector2(screenBounds.max.x-screenBounds.min.x, screenBounds.max.y-screenBounds.min.y); Vector3 screenBillboardVertices[4]; screenBillboardVertices[0] = Vector3(screenBounds.min.x, screenBounds.min.y, screenBounds.min.z); screenBillboardVertices[1] = Vector3(screenBounds.max.x, screenBounds.min.y, screenBounds.min.z); screenBillboardVertices[2] = Vector3(screenBounds.min.x, screenBounds.max.y, screenBounds.min.z); screenBillboardVertices[3] = Vector3(screenBounds.max.x, screenBounds.max.y, screenBounds.min.z); center = Vector3(); Matrix4 invMvp = mvp; invMvp.Inverse(); for(int32 i = 0; i < 4; ++i) { //unproject Vector4 out; out.x = 2.f*(screenBillboardVertices[i].x-viewport.x)/viewport.dx-1.f; out.y = 2.f*(screenBillboardVertices[i].y-viewport.y)/viewport.dy-1.f; out.z = 2.f*screenBillboardVertices[i].z-1.f; out.w = 1.f; out = out*invMvp; DVASSERT(out.w != 0.f); out.x /= out.w; out.y /= out.w; out.z /= out.w; imposterVertices[i] = Vector3(out.x, out.y, out.z); center += imposterVertices[i]; } center /= 4.f; //draw RecreateFbo(screenSize); //Logger::Info("%f, %f", screenSize.x, screenSize.y); if(!block) { return; } direction = camera->GetPosition()-center; direction.Normalize(); distanceSquaredToCamera = (center-cameraPos).SquareLength(); float32 nearPlane = sqrtf(distanceSquaredToCamera); //float32 farPlane = nearPlane + (bbox.max.z-bbox.min.z); float32 w = (imposterVertices[1]-imposterVertices[0]).Length(); float32 h = (imposterVertices[2]-imposterVertices[0]).Length(); //TODO: calculate instead of +50 imposterCamera->Setup(-w/2.f, w/2.f, -h/2.f, h/2.f, nearPlane, nearPlane+50.f); Rect oldViewport = RenderManager::Instance()->GetViewport(); //Texture * target = fbo->GetTexture(); RenderManager::Instance()->AppendState(RenderState::STATE_SCISSOR_TEST); RenderManager::Instance()->State()->SetScissorRect(Rect(block->offset.x, block->offset.y, block->size.dx, block->size.dy)); RenderManager::Instance()->FlushState(); //TODO: use one "clear" function instead of two //if(block->size.x == 512.f) //{ // RenderManager::Instance()->ClearWithColor(0.f, .8f, 0.f, 1.f); //} //else if(block->size.x == 256.f) //{ // RenderManager::Instance()->ClearWithColor(0.f, .3f, 0.f, 1.f); //} //else if(block->size.x == 128.f)//.........这里部分代码省略.........
开发者ID:vilonosec,项目名称:dava.framework,代码行数:101,
示例15: DVASSERTTexture *RenderManager::GetTexture(uint32 textureLevel){ DVASSERT(textureLevel < RenderState::MAX_TEXTURE_LEVELS); return currentState.currentTexture[textureLevel]; }
开发者ID:boyjimeking,项目名称:dava.framework,代码行数:5,
示例16: GetLightvoid LightPropertyControl::ReadFrom(Entity * sceneNode){ NodesPropertyControl::ReadFrom(sceneNode); Light *light = GetLight(sceneNode); DVASSERT(light); propertyList->AddSection("property.lightnode.light", GetHeaderState("property.lightnode.light", true)); propertyList->AddComboProperty("property.lightnode.type", types); propertyList->SetComboPropertyIndex("property.lightnode.type", light->GetType()); propertyList->AddColorProperty("property.lightnode.ambient.color"); propertyList->SetColorPropertyValue("property.lightnode.ambient.color", light->GetAmbientColor()); propertyList->AddColorProperty("property.lightnode.diffuse.color"); propertyList->SetColorPropertyValue("property.lightnode.diffuse.color", light->GetDiffuseColor()); propertyList->AddColorProperty("property.lightnode.specular.color"); propertyList->SetColorPropertyValue("property.lightnode.specular.color", light->GetSpecularColor()); propertyList->AddFloatProperty("property.lightnode.intensity"); propertyList->SetFloatPropertyValue("property.lightnode.intensity", light->GetIntensity()); //propertyList->AddFloatProperty("property.lightnode.material.shininess", light->GetShininess()) propertyList->AddSection("property.lightnode.staticlight", GetHeaderState("property.lightnode.staticlight", true)); propertyList->AddBoolProperty("property.staticlight.enable"); propertyList->SetBoolPropertyValue("property.staticlight.enable", sceneNode->GetCustomProperties()->GetBool("editor.staticlight.enable", true)); propertyList->AddBoolProperty("Cast shadows"); propertyList->SetBoolPropertyValue("Cast shadows", sceneNode->GetCustomProperties()->GetBool("editor.staticlight.castshadows", true)); propertyList->AddFloatProperty("Intensity"); propertyList->SetFloatPropertyValue("Intensity", sceneNode->GetCustomProperties()->GetFloat("editor.intensity", 1.f)); propertyList->AddFloatProperty("Falloff cutoff"); propertyList->SetFloatPropertyValue("Falloff cutoff", sceneNode->GetCustomProperties()->GetFloat("editor.staticlight.falloffcutoff", 1000.f)); propertyList->AddFloatProperty("Falloff exponent"); propertyList->SetFloatPropertyValue("Falloff exponent", sceneNode->GetCustomProperties()->GetFloat("editor.staticlight.falloffexponent", 1.f)); if(Light::TYPE_DIRECTIONAL == light->GetType()) { propertyList->AddFloatProperty("Shadow angle"); propertyList->SetFloatPropertyValue("Shadow angle", sceneNode->GetCustomProperties()->GetFloat("editor.staticlight.shadowangle", 0.f)); propertyList->AddIntProperty("Shadow samples"); propertyList->SetIntPropertyValue("Shadow samples", sceneNode->GetCustomProperties()->GetInt32("editor.staticlight.shadowsamples", 1)); } else if(Light::TYPE_POINT == light->GetType()) { propertyList->AddFloatProperty("Shadow radius"); propertyList->SetFloatPropertyValue("Shadow radius", sceneNode->GetCustomProperties()->GetFloat("editor.staticlight.shadowradius", 0.f)); } propertyList->AddSection("property.lightnode.dynamiclight", GetHeaderState("property.lightnode.dynamiclight", true)); propertyList->AddBoolProperty("property.dynamiclight.enable"); propertyList->SetBoolPropertyValue("property.dynamiclight.enable", sceneNode->GetCustomProperties()->GetBool("editor.dynamiclight.enable", true));}
开发者ID:droidenko,项目名称:dava.framework,代码行数:62,
示例17: DVASSERTvoid LandscapeEditorColor::StoreOriginalTexture(){ DVASSERT(originalImage == NULL); originalImage = StoreState();}
开发者ID:vilonosec,项目名称:dava.framework,代码行数:5,
示例18: UpdateCellSize // UIListDelegate implementation int32 EditorListDelegate::ElementsCount(UIList *forList) { UpdateCellSize(forList); DVASSERT(cellsCount > 0); return cellsCount; }
开发者ID:galek,项目名称:dava.framework,代码行数:7,
示例19: DVASSERTvoid PngImageExt::Write(const FilePath & filename){ DVASSERT(internalData); ImageLoader::Save(internalData, filename);}
开发者ID:droidenko,项目名称:dava.framework,代码行数:5,
注:本文中的DVASSERT函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ DVD_MSEC_TO_TIME函数代码示例 C++ DUNGEON_MODE函数代码示例 |