InstancesManagerImpl::InstancesManagerImpl(osg::Node* prototype, const std::string& anim_file_name, size_t const max_instances) : srcModel_ (prototype) , instNum_ (0) , animDataLoaded_(false) , maxInstances_(max_instances) { _initData(); animDataLoaded_ = _loadAnimationData(anim_file_name); instGeode_ = _createGeode(); auto tr = srcModel_->asTransform(); if(tr->asPositionAttitudeTransform()) { srcQuat_ = tr->asPositionAttitudeTransform()->getAttitude(); srcScale_ = tr->asPositionAttitudeTransform()->getScale(); } else if(tr->asMatrixTransform()) { srcQuat_ = tr->asMatrixTransform()->getMatrix().getRotate(); } instGeode_->setCullCallback(Utils::makeNodeCallback(instGeode_.get(), this, &InstancesManagerImpl::cull)); }
bool EXDynamicLightLayer::init() { if ( !CCLayer::init() ) return false; _initData(); return true; }
void Chunk::Generate() { if(_fresh) { if (_blocks == 0) _initData(); //TerrainGenerator::CreateFlatTerrain(this); TerrainGenerator::Instace()->GenerateChunk(this); //here should be something like chunkprovidermanager //that have abstract chunkprovider _fresh = false; } }
void DataManager::create(const int &nx, const int &ny, const int &nz) { remove(); mNx = nx; mNy = ny; mNz = nz; mFFRandom = new FastFakeRandom(1024, 0, 1); _initData(nx, ny, nz); for (int k = 0; k < 2; k++) { _createVolTexture(static_cast<VolTextureId>(k), nx, ny, nz); } _updateVolTextureData(mCellsCurrent, VOL_TEX0, mNx, mNy, mNz); _updateVolTextureData(mCellsCurrent, VOL_TEX1, mNx, mNy, mNz); mCreated = true; }
CXTPReportColumn::CXTPReportColumn(int nItemIndex, LPCTSTR strDisplayName, LPCTSTR strInternalName, int nWidth, BOOL bAutoSize, int nIconID, BOOL bSortable, BOOL bVisible) { _initData(nItemIndex, strDisplayName, strInternalName, nWidth, bAutoSize, nIconID, bSortable, bVisible); }