| Index: core/cross/command_buffer/sampler_cb.cc
 | 
| ===================================================================
 | 
| --- core/cross/command_buffer/sampler_cb.cc	(revision 26638)
 | 
| +++ core/cross/command_buffer/sampler_cb.cc	(working copy)
 | 
| @@ -86,15 +86,11 @@
 | 
|        renderer_(renderer) {
 | 
|    DCHECK(renderer_);
 | 
|    resource_id_ = renderer_->sampler_ids().AllocateID();
 | 
| -  CommandBufferEntry args[1];
 | 
| -  args[0].value_uint32 = resource_id_;
 | 
| -  renderer_->helper()->AddCommand(command_buffer::CREATE_SAMPLER, 1, args);
 | 
| +  renderer_->helper()->CreateSampler(resource_id_);
 | 
|  }
 | 
|  
 | 
|  SamplerCB::~SamplerCB() {
 | 
| -  CommandBufferEntry args[1];
 | 
| -  args[0].value_uint32 = resource_id_;
 | 
| -  renderer_->helper()->AddCommand(command_buffer::DESTROY_SAMPLER, 1, args);
 | 
| +  renderer_->helper()->DestroySampler(resource_id_);
 | 
|    renderer_->sampler_ids().FreeID(resource_id_);
 | 
|  }
 | 
|  
 | 
| @@ -102,6 +98,7 @@
 | 
|    CommandBufferHelper *helper = renderer_->helper();
 | 
|    sampler::AddressingMode address_mode_u_cb = AddressModeToCB(address_mode_u());
 | 
|    sampler::AddressingMode address_mode_v_cb = AddressModeToCB(address_mode_v());
 | 
| +  sampler::AddressingMode address_mode_w_cb = AddressModeToCB(address_mode_w());
 | 
|    sampler::FilteringMode mag_filter_cb = FilterTypeToCB(mag_filter());
 | 
|    sampler::FilteringMode min_filter_cb = FilterTypeToCB(min_filter());
 | 
|    sampler::FilteringMode mip_filter_cb = FilterTypeToCB(mip_filter());
 | 
| @@ -113,24 +110,19 @@
 | 
|    if (min_filter() != Sampler::ANISOTROPIC) {
 | 
|      max_anisotropy_cb = 1;
 | 
|    }
 | 
| -  CommandBufferEntry args[5];
 | 
| -  args[0].value_uint32 = resource_id_;
 | 
| -  args[1].value_uint32 =
 | 
| -      set_sampler_states::AddressingU::MakeValue(address_mode_u_cb) |
 | 
| -      set_sampler_states::AddressingV::MakeValue(address_mode_v_cb) |
 | 
| -      set_sampler_states::AddressingW::MakeValue(sampler::WRAP) |
 | 
| -      set_sampler_states::MagFilter::MakeValue(mag_filter_cb) |
 | 
| -      set_sampler_states::MinFilter::MakeValue(min_filter_cb) |
 | 
| -      set_sampler_states::MipFilter::MakeValue(mip_filter_cb) |
 | 
| -      set_sampler_states::MaxAnisotropy::MakeValue(max_anisotropy_cb);
 | 
| -  helper->AddCommand(command_buffer::SET_SAMPLER_STATES, 2, args);
 | 
| +  helper->SetSamplerStates(
 | 
| +      resource_id_,
 | 
| +      address_mode_u_cb,
 | 
| +      address_mode_v_cb,
 | 
| +      address_mode_w_cb,
 | 
| +      mag_filter_cb,
 | 
| +      min_filter_cb,
 | 
| +      mip_filter_cb,
 | 
| +      max_anisotropy_cb);
 | 
|  
 | 
|    Float4 color = border_color();
 | 
| -  args[1].value_float = color[0];
 | 
| -  args[2].value_float = color[1];
 | 
| -  args[3].value_float = color[2];
 | 
| -  args[4].value_float = color[3];
 | 
| -  helper->AddCommand(command_buffer::SET_SAMPLER_BORDER_COLOR, 5, args);
 | 
| +  helper->SetSamplerBorderColor(resource_id_,
 | 
| +                                   color[0], color[1], color[2], color[3]);
 | 
|  
 | 
|    Texture *texture_object = texture();
 | 
|    if (!texture_object) {
 | 
| @@ -143,9 +135,9 @@
 | 
|    }
 | 
|  
 | 
|    if (texture_object) {
 | 
| -    args[1].value_uint32 =
 | 
| -        reinterpret_cast<ResourceID>(texture_object->GetTextureHandle());
 | 
| -    helper->AddCommand(command_buffer::SET_SAMPLER_TEXTURE, 2, args);
 | 
| +    helper->SetSamplerTexture(
 | 
| +        resource_id_,
 | 
| +        reinterpret_cast<uint32>(texture_object->GetTextureHandle()));
 | 
|    }
 | 
|  }
 | 
|  
 | 
| 
 |