8 #ifndef GlobeEngine_MBlock_h
9 #define GlobeEngine_MBlock_h
27 void create(
MBlockQuadtree* _root, std::shared_ptr<geSpatial::CullableSpatialKey>
key,
double _edgelength,
int _parentID);
29 int locateMBlock(
double _x,
double _y,
double _kPatchEdgeLenght);
55 std::cout <<
" req: " << childsRequested <<
" remove req: " << removeChildsRequested <<
" || ";
57 for (
int i = 0; i < 8; i++){
58 std::cout << this->texlist[i] <<
" ";
61 if(this->kpatchlist.size() > 0){
62 std::cout <<
" | kpatch: " << this->kpatchlist.size() <<
" , ";
63 for (
int i = 0; i < this->kpatchlist.size(); i++){
64 std::cout << this->kpatchlist[i] <<
" ";
68 std::cout << std::endl;
75 #ifndef GENGINE_GL_BELOW_410
83 return this->removeChildsRequested;
91 std::vector<int> kpatchlist;
92 std::shared_ptr<ge::TextureHandle> texlist[8];
101 bool childsRequested;
102 bool removeChildsRequested;
GLuint getOrthoHandle()
Definition: MBlock.cpp:603
MBlock()
Definition: MBlock.cpp:13
void clean()
Definition: MBlock.cpp:24
void setBlockType(BlockType _type)
Definition: MBlock.cpp:594
void traverseAndMarkNodesInViewFrustum(std::shared_ptr< ge::Camera > const &_cam, bool _markToDelete)
Definition: MBlock.cpp:321
void unbindTextureChannel(int _channelID)
Definition: MBlock.cpp:625
Definition: GeometricBalancedArrayTreeNode.h:13
void locateAndSetTexture(std::shared_ptr< geSpatial::CullableSpatialKey > _key, MBlockQuadtree::MBlockQuadtreeLevel _level, std::shared_ptr< ge::TextureHandle > _tex, float _max_error, float *_errors)
Definition: MBlock.cpp:68
void setOrthoHandle(GLuint _handle)
void create(MBlockQuadtree *_root, std::shared_ptr< geSpatial::CullableSpatialKey > key, double _edgelength, int _parentID)
Definition: MBlock.cpp:42
Definition: KPatchBase.h:13
BlockType
Definition: MBlock.h:21
int locateMBlock(double _x, double _y, double _kPatchEdgeLenght)
Definition: MBlock.cpp:179
void makeBindlessTexturesNotResident()
Definition: MBlock.cpp:582
void addKPatch(int _uid)
Definition: MBlock.cpp:495
Definition: MBlockQuadtree.h:28
float getMaxError()
Definition: MBlock.cpp:631
GLuint getHeightTexHandle()
Definition: MBlock.cpp:595
enum BlockType getBlockType()
Definition: MBlock.h:41
std::shared_ptr< KEYTYPE > key
Definition: ArrayTreeNode.h:170
GLuint64 getBindlessTextureHandle(int _layerIdx) const
Definition: MBlock.cpp:559
void searchNeighbourAndSplit(int _uid, BlockType _changeFirst, BlockType _changeSecond, bool _mirror_y_axis)
Definition: MBlock.cpp:426
void print()
Definition: GeometricBalancedArrayTreeNode.h:141
void setBindlessTextureHandles()
Definition: MBlock.cpp:566
void print(bool _details)
Definition: MBlock.h:53
std::vector< int > const & getKPatches()
Definition: MBlock.cpp:630
~MBlock()
Definition: MBlock.cpp:19
void createChildren()
Definition: MBlock.cpp:109
void clearKPatchList()
Definition: MBlock.cpp:500
bool isInWGS84Area() const
Definition: MBlock.cpp:611
int searchNodeAndRemoveTexture(std::shared_ptr< geSpatial::CullableSpatialKey > _key)
Definition: MBlock.cpp:274
void makeBindlessTexturesResident()
Definition: MBlock.cpp:574
void requestChildsForMBlock()
Definition: MBlock.cpp:235
void propateErrorUp()
Definition: MBlock.cpp:535
void printErrors()
Definition: MBlock.cpp:633
void removeChildsForMBlock()
Definition: MBlock.cpp:264
bool hasARemoveRequest() const
Definition: MBlock.h:82
Definition: MBlockQuadtree.h:33
void bindTexLayerAtTextureChannel(int _texLayer, int _channelID)
Definition: MBlock.cpp:615
void restrict()
Definition: MBlock.cpp:385