OnClientRender: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
m (Revert "onClientRender instead of onClientPreRender" (Mistake))
 
(8 intermediate revisions by 6 users not shown)
Line 9: Line 9:
The [[event system#Event source|source]] of this event is the client's [[root element]].
The [[event system#Event source|source]] of this event is the client's [[root element]].


function showPic() 
==Example==
    dxDrawImage(1074.0,898.0,187.0,107.0,"images/TestPic",0.0,0.0,0.0,tocolor(255,255,255,255),false)  
This example makes the camera follow the player in a GTA2-like way. This will be a little bit laggy. If you want the camera to follow something (eg. player or vehicle) then use [[onClientPreRender]] instead.
<syntaxhighlight lang="lua">
function updateCamera ()
local x, y, z = getElementPosition ( localPlayer )
setCameraMatrix ( x, y, z + 50, x, y, z )
end
end
addEventHandler("onClientRender",root,showPic)
addEventHandler ( "onClientRender", root, updateCamera )
</syntaxhighlight>
 
==Warning==
This event and [[onClientPreRender]] will trigger whatever function it is attached to with every frame. Depending on the server's maximum FPS and what your computer might handle - you might end up triggering the function 30-60 times '''per second'''.
 
As a result, this event may cause severe lag and/or even crashes if not used cautiously.


==See Also==
==See Also==
===[[Game_Processing_Order|Game Processing Order]]===
===Other client events===
===Other client events===
{{Client_other_events}}
{{Client_other_events}}
===Client event functions===
===Client event functions===
{{Client_event_functions}}
{{Client_event_functions}}

Latest revision as of 18:37, 26 May 2024

This event is triggered every time GTA renders a new frame. It is required for the DirectX drawing functions, and also useful for other clientside operations that have to be applied repeatedly with very short time differences between them.

Parameters

None

Source

The source of this event is the client's root element.

Example

This example makes the camera follow the player in a GTA2-like way. This will be a little bit laggy. If you want the camera to follow something (eg. player or vehicle) then use onClientPreRender instead.

function updateCamera ()
	local x, y, z = getElementPosition ( localPlayer )
	setCameraMatrix ( x, y, z + 50, x, y, z )
end
addEventHandler ( "onClientRender", root, updateCamera )

Warning

This event and onClientPreRender will trigger whatever function it is attached to with every frame. Depending on the server's maximum FPS and what your computer might handle - you might end up triggering the function 30-60 times per second.

As a result, this event may cause severe lag and/or even crashes if not used cautiously.

See Also

Game Processing Order

Other client events


Client event functions