Lines Matching +full:attrib +full:-
3 // Use of this source code is governed by a BSD-style license that can be
49 mRefCount--; in release()
59 : mFactory(factory), mVertexBuffer(factory->createVertexBuffer()), mDynamic(dynamic) in VertexBufferInterface()
66 mVertexBuffer->release(); in ~VertexBufferInterface()
74 return mVertexBuffer->getSerial(); in getSerial()
80 return mVertexBuffer->getBufferSize(); in getBufferSize()
86 if (mVertexBuffer->getBufferSize() == 0) in setBufferSize()
88 return mVertexBuffer->initialize(context, size, mDynamic); in setBufferSize()
91 return mVertexBuffer->setBufferSize(context, size); in setBufferSize()
95 const gl::VertexAttribute &attrib, in getSpaceRequired() argument
103 ANGLE_TRY(mFactory->getVertexSpaceRequired(context, attrib, binding, count, instances, in getSpaceRequired()
106 // Align to 16-byte boundary in getSpaceRequired()
117 return mVertexBuffer->discard(context); in discard()
141 mVertexBuffer->release(); in reset()
142 mVertexBuffer = mFactory->createVertexBuffer(); in reset()
169 const gl::VertexAttribute &attrib, in storeDynamicAttribute() argument
181 getSpaceRequired(context, attrib, binding, count, instances, baseInstance, &spaceRequired)); in storeDynamicAttribute()
197 // the driver is referencing the correct data with non-zero baseInstance in storeDynamicAttribute()
201 ANGLE_TRY(mVertexBuffer->storeVertexAttributes(context, attrib, binding, currentValueType, in storeDynamicAttribute()
216 const gl::VertexAttribute &attrib, in reserveVertexSpace() argument
223 ANGLE_TRY(mFactory->getVertexSpaceRequired(context, attrib, binding, count, instances, in reserveVertexSpace()
226 // Align to 16-byte boundary in reserveVertexSpace()
244 const gl::VertexAttribute &attrib, in matchesAttribute() argument
247 size_t attribStride = ComputeVertexAttributeStride(attrib, binding); in matchesAttribute()
249 if (formatID != attrib.format->id || static_cast<GLuint>(stride) != attribStride) in matchesAttribute()
255 (static_cast<size_t>(ComputeVertexAttributeOffset(attrib, binding)) % attribStride); in matchesAttribute()
259 void StaticVertexBufferInterface::AttributeSignature::set(const gl::VertexAttribute &attrib, in set() argument
262 formatID = attrib.format->id; in set()
263 offset = stride = static_cast<GLuint>(ComputeVertexAttributeStride(attrib, binding)); in set()
264 offset = static_cast<size_t>(ComputeVertexAttributeOffset(attrib, binding)) % in set()
265 ComputeVertexAttributeStride(attrib, binding); in set()
274 bool StaticVertexBufferInterface::matchesAttribute(const gl::VertexAttribute &attrib, in matchesAttribute() argument
277 return mSignature.matchesAttribute(attrib, binding); in matchesAttribute()
280 void StaticVertexBufferInterface::setAttribute(const gl::VertexAttribute &attrib, in setAttribute() argument
283 return mSignature.set(attrib, binding); in setAttribute()
287 const gl::VertexAttribute &attrib, in storeStaticAttribute() argument
295 ANGLE_TRY(getSpaceRequired(context, attrib, binding, count, instances, 0, &spaceRequired)); in storeStaticAttribute()
298 ASSERT(attrib.enabled); in storeStaticAttribute()
299 ANGLE_TRY(mVertexBuffer->storeVertexAttributes(context, attrib, binding, in storeStaticAttribute()
303 mSignature.set(attrib, binding); in storeStaticAttribute()
304 mVertexBuffer->hintUnmapResource(); in storeStaticAttribute()