public RegionRenderCacheBuilder allocateRenderBuilder() throws InterruptedException
{
return (RegionRenderCacheBuilder)this.queueFreeRenderBuilders.take();
}
java类net.minecraft.client.renderer.RegionRenderCacheBuilder的实例源码
ChunkRenderDispatcher.java 文件源码
项目:BaseClient
阅读 19
收藏 0
点赞 0
评论 0
ChunkCompileTaskGenerator.java 文件源码
项目:BaseClient
阅读 17
收藏 0
点赞 0
评论 0
public RegionRenderCacheBuilder getRegionRenderCacheBuilder()
{
return this.regionRenderCacheBuilder;
}
ChunkCompileTaskGenerator.java 文件源码
项目:BaseClient
阅读 18
收藏 0
点赞 0
评论 0
public void setRegionRenderCacheBuilder(RegionRenderCacheBuilder regionRenderCacheBuilderIn)
{
this.regionRenderCacheBuilder = regionRenderCacheBuilderIn;
}
ChunkRenderWorker.java 文件源码
项目:Backmemed
阅读 16
收藏 0
点赞 0
评论 0
public ChunkRenderWorker(ChunkRenderDispatcher p_i46201_1_)
{
this(p_i46201_1_, (RegionRenderCacheBuilder)null);
}
ChunkRenderWorker.java 文件源码
项目:Backmemed
阅读 17
收藏 0
点赞 0
评论 0
public ChunkRenderWorker(ChunkRenderDispatcher chunkRenderDispatcherIn, @Nullable RegionRenderCacheBuilder regionRenderCacheBuilderIn)
{
this.shouldRun = true;
this.chunkRenderDispatcher = chunkRenderDispatcherIn;
this.regionRenderCacheBuilder = regionRenderCacheBuilderIn;
}
ChunkRenderWorker.java 文件源码
项目:Backmemed
阅读 16
收藏 0
点赞 0
评论 0
private RegionRenderCacheBuilder getRegionRenderCacheBuilder() throws InterruptedException
{
return this.regionRenderCacheBuilder != null ? this.regionRenderCacheBuilder : this.chunkRenderDispatcher.allocateRenderBuilder();
}
ChunkRenderDispatcher.java 文件源码
项目:Backmemed
阅读 20
收藏 0
点赞 0
评论 0
public ChunkRenderDispatcher(int p_i1_1_)
{
this.listWorkerThreads = Lists.<Thread>newArrayList();
this.listThreadedWorkers = Lists.<ChunkRenderWorker>newArrayList();
this.queueChunkUpdates = Queues.<ChunkCompileTaskGenerator>newPriorityBlockingQueue();
this.worldVertexUploader = new WorldVertexBufferUploader();
this.vertexUploader = new VertexBufferUploader();
this.queueChunkUploads = Queues.<ChunkRenderDispatcher.PendingUpload>newPriorityQueue();
int i = Math.max(1, (int)((double)Runtime.getRuntime().maxMemory() * 0.3D) / 10485760);
int j = Math.max(1, MathHelper.clamp(Runtime.getRuntime().availableProcessors(), 1, i / 5));
if (p_i1_1_ < 0)
{
this.countRenderBuilders = MathHelper.clamp(j, 1, i);
}
else
{
this.countRenderBuilders = p_i1_1_;
}
if (j > 1)
{
for (int k = 0; k < j; ++k)
{
ChunkRenderWorker chunkrenderworker = new ChunkRenderWorker(this);
Thread thread = THREAD_FACTORY.newThread(chunkrenderworker);
thread.start();
this.listThreadedWorkers.add(chunkrenderworker);
this.listWorkerThreads.add(thread);
}
}
this.queueFreeRenderBuilders = Queues.<RegionRenderCacheBuilder>newArrayBlockingQueue(this.countRenderBuilders);
for (int l = 0; l < this.countRenderBuilders; ++l)
{
this.queueFreeRenderBuilders.add(new RegionRenderCacheBuilder());
}
this.renderWorker = new ChunkRenderWorker(this, new RegionRenderCacheBuilder());
}
ChunkRenderDispatcher.java 文件源码
项目:Backmemed
阅读 14
收藏 0
点赞 0
评论 0
public void freeRenderBuilder(RegionRenderCacheBuilder p_178512_1_)
{
this.queueFreeRenderBuilders.add(p_178512_1_);
}
ChunkRenderDispatcher.java 文件源码
项目:Backmemed
阅读 31
收藏 0
点赞 0
评论 0
public RegionRenderCacheBuilder allocateRenderBuilder() throws InterruptedException
{
return (RegionRenderCacheBuilder)this.queueFreeRenderBuilders.take();
}
ChunkCompileTaskGenerator.java 文件源码
项目:Backmemed
阅读 18
收藏 0
点赞 0
评论 0
public RegionRenderCacheBuilder getRegionRenderCacheBuilder()
{
return this.regionRenderCacheBuilder;
}