DxDrawModel3D: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(7 intermediate revisions by 4 users not shown)
Line 4: Line 4:
{{Important Note|This function doesn't obey any streaming limits, you can draw as many models as you want}}
{{Important Note|This function doesn't obey any streaming limits, you can draw as many models as you want}}
{{Important Note|You can not render model to render target.}}
{{Important Note|You can not render model to render target.}}
{{New feature/item|3.0161|1.6.0|22271|
{{New feature/item|3.0161|1.6.0|22708|
This function draws a 3D model - rendered for '''one''' frame. Drawn models are indistinguishable from this one created by [[createObject]] function. This should be used in conjunction with [[onClientRender]] in order to display continuously.  
This function draws a 3D model - rendered for '''one''' frame. Drawn models are indistinguishable from this one created by [[createObject]] function. This should be used in conjunction with [[onClientRender]] or [[onClientPreRender]] in order to display continuously. Note that a model must be loaded at the time this function is called. A model can be loaded and unloaded with the help of [[engineStreamingRequestModel]] and [[engineStreamingReleaseModel]] functions.
}}
}}


==Syntax==
==Syntax==
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
bool dxDrawModel( int modelId, float positionX, float positionY, float positionZ, float rotationX, float rotationY, float rotationZ [, float scaleX, float scaleY, float scaleZ ])
bool dxDrawModel3D( int modelId, float positionX, float positionY, float positionZ, float rotationX, float rotationY, float rotationZ [, float scaleX, float scaleY, float scaleZ ])
</syntaxhighlight>
</syntaxhighlight>


Line 39: Line 39:
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
addEventHandler("onClientPreRender", root, function()
addEventHandler("onClientPreRender", root, function()
     dxDrawModel3d(3276, -719.64984, 951.26685, 12.13281, 0, 0,90)
     engineStreamingRequestModel(3276)
    dxDrawModel3D(3276, -719.64984, 951.26685, 12.13281, 0, 0,90)
end)
end)
</syntaxhighlight>
</syntaxhighlight>

Latest revision as of 12:37, 5 September 2024

[[{{{image}}}|link=|]] Important Note: You can not use this function to draw vehicles and ped
[[{{{image}}}|link=|]] Important Note: This function doesn't obey any streaming limits, you can draw as many models as you want
[[{{{image}}}|link=|]] Important Note: You can not render model to render target.
ADDED/UPDATED IN VERSION 1.6.0 r22708:

This function draws a 3D model - rendered for one frame. Drawn models are indistinguishable from this one created by createObject function. This should be used in conjunction with onClientRender or onClientPreRender in order to display continuously. Note that a model must be loaded at the time this function is called. A model can be loaded and unloaded with the help of engineStreamingRequestModel and engineStreamingReleaseModel functions.

Syntax

bool dxDrawModel3D( int modelId, float positionX, float positionY, float positionZ, float rotationX, float rotationY, float rotationZ [, float scaleX, float scaleY, float scaleZ ])
Model during day
Model during night

Required Arguments

  • modelId: Model you want to draw, must be regular object, you can not draw vehicles and peds
  • positionX/Y/Z: Position of model
  • rotationX/Y/Z: Rotation of model

Optional Arguments

  • scaleX/Y/Z: Scale of model, by default {1,1,1}

Returns

Returns true if the operation was successful, false otherwise.





Example

Click to collapse [-]
Client

Simple example

addEventHandler("onClientPreRender", root, function()
    engineStreamingRequestModel(3276)
    dxDrawModel3D(3276, -719.64984, 951.26685, 12.13281, 0, 0,90)
end)

See Also