Hi,
I'd thunk CreateTexture1 -> CreateTexture3, CreateTexture2->CreateTexture3 and implement CreateTexture3 via CreateObject + InitFromImage - unless there's some behavior difference in those methods that prevents you from doing this.
Cheers,
Stefan
Am 29.04.2016 um 11:25 schrieb Aaryaman Vasishta <jem456.vasishta@gmail.com>:
> Not really, I thought that since InitFromImage doesn't exist for version 1, I wasn't sure if it's a good idea to use it within CreateTexture for version 1.
> Is it fine, though?. I'll use InitFromImage if it's a better approach. Besides, since they behave the same so far, there's no reason to not use it anyways.
>
> I agree with thunking version 2's CreateTexture to version 3, I'll resend the patch for the same, after I get to know your opinion for the above question.
>
> Cheers,
> Aaryaman
>
> On Fri, Apr 29, 2016 at 1:06 PM, Stefan D��singer <stefandoesinger@gmail.com> wrote:
>
>> Am 28.04.2016 um 20:17 schrieb Aaryaman Vasishta <jem456.vasishta@gmail.com>:
>>
>> @@ -198,13 +198,24 @@ static HRESULT WINAPI d3drm1_CreateTexture(IDirect3DRM *iface,
>>�� �� struct d3drm_texture *object;
>>�� �� HRESULT hr;
>>
>> -�� �� FIXME("iface %p, image %p, texture %p partial stub.\n", iface, image, texture);
>> +�� �� TRACE("iface %p, image %p, texture %p.\n", iface, image, texture);
>> +
>> +�� �� if (!d3drm_validate_image(image))
>> +�� �� �� �� return D3DRMERR_BADVALUE;
>>
>>�� �� if (FAILED(hr = d3drm_texture_create(&object)))
>> +�� �� {
>> +�� �� �� �� d3drm_texture_destroy(object);
>>�� �� �� �� return hr;
>> +�� �� }
>> +�� �� object->d3drm = iface;
>> +�� �� object->initialized = TRUE;
>> +�� �� object->image = image;
>>
>>�� �� *texture = &object->IDirect3DRMTexture_iface;
>>
>> +�� �� IDirect3DRM_AddRef(iface);
>> +
>>�� �� return D3DRM_OK;
>> }
>>
> Is there anything wrong with calling Texture3::InitFromImage here, or even calling IDirect3DRM3::CreateTexture? in D3DRM1::CreateTexture and D3DRM2::CreateTexture?
>