<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.multitheftauto.com/wiki/CreateAdditionalStreamInfo?action=history&amp;feed=atom</id>
	<title>CreateAdditionalStreamInfo - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.multitheftauto.com/wiki/CreateAdditionalStreamInfo?action=history&amp;feed=atom"/>
	<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=CreateAdditionalStreamInfo&amp;action=history"/>
	<updated>2026-05-23T17:30:13Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=CreateAdditionalStreamInfo&amp;diff=51000&amp;oldid=prev</id>
		<title>Xtravax: Created page with &quot;&lt;pageclass subcaption=&quot;C++ Function&quot;&gt;&lt;/pageclass&gt;  This C++ Function is found inside of CAdditionalVertexStreamManager.  It creates additional stream info.  It can be foun...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=CreateAdditionalStreamInfo&amp;diff=51000&amp;oldid=prev"/>
		<updated>2017-05-14T13:40:44Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&amp;lt;pageclass subcaption=&amp;quot;C++ Function&amp;quot;&amp;gt;&amp;lt;/pageclass&amp;gt;  This C++ Function is found inside of &lt;a href=&quot;/wiki/CAdditionalVertexStreamManager&quot; title=&quot;CAdditionalVertexStreamManager&quot;&gt;CAdditionalVertexStreamManager&lt;/a&gt;.  It creates additional stream info.  It can be foun...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;pageclass subcaption=&amp;quot;C++ Function&amp;quot;&amp;gt;&amp;lt;/pageclass&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This C++ Function is found inside of [[CAdditionalVertexStreamManager]].&lt;br /&gt;
&lt;br /&gt;
It creates additional stream info.&lt;br /&gt;
&lt;br /&gt;
It can be found in '''Client/Client Core/Sources/CAdditionalVertexStreamManager.cpp''' in Visual Studio.&lt;br /&gt;
&lt;br /&gt;
==Required Arguments==&lt;br /&gt;
*'''state:''' To be defined.&lt;br /&gt;
&lt;br /&gt;
==Returns==&lt;br /&gt;
Returns --to be defined.&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
SAdditionalStreamInfo* CAdditionalVertexStreamManager::CreateAdditionalStreamInfo ( const SCurrentStateInfo&amp;amp; state )&lt;br /&gt;
{&lt;br /&gt;
    SAdditionalStreamInfo* pAdditionalInfo = MapFind ( m_AdditionalStreamInfoMap, state.stream1.pStreamData );&lt;br /&gt;
    if ( !pAdditionalInfo )&lt;br /&gt;
    {&lt;br /&gt;
        // Create it&lt;br /&gt;
        SAdditionalStreamInfo info;&lt;br /&gt;
&lt;br /&gt;
        // Create new decleration&lt;br /&gt;
        D3DVERTEXELEMENT9 elements[MAXD3DDECLLENGTH];&lt;br /&gt;
        assert ( state.decl.numElements &amp;gt; 3 &amp;amp;&amp;amp; state.decl.numElements &amp;lt; 5 );&lt;br /&gt;
        memcpy ( elements, state.decl.elements, state.decl.numElements * sizeof ( D3DVERTEXELEMENT9 ) );&lt;br /&gt;
&lt;br /&gt;
        D3DVERTEXELEMENT9* declNew = &amp;amp;elements[ state.decl.numElements - 1 ];&lt;br /&gt;
        elements[ state.decl.numElements ] = *declNew;&lt;br /&gt;
&lt;br /&gt;
        declNew-&amp;gt;Stream = 2;&lt;br /&gt;
        declNew-&amp;gt;Offset = 0;&lt;br /&gt;
        declNew-&amp;gt;Type = D3DDECLTYPE_FLOAT3;&lt;br /&gt;
        declNew-&amp;gt;Method = D3DDECLMETHOD_DEFAULT;&lt;br /&gt;
        declNew-&amp;gt;Usage = D3DDECLUSAGE_NORMAL;&lt;br /&gt;
        declNew-&amp;gt;UsageIndex = 0;&lt;br /&gt;
        if ( FAILED( m_pDevice-&amp;gt;CreateVertexDeclaration ( elements, &amp;amp;info.pVertexDeclaration ) ) )&lt;br /&gt;
            return false;&lt;br /&gt;
&lt;br /&gt;
        // Create new stream&lt;br /&gt;
        info.Stride = sizeof ( float ) * 3;&lt;br /&gt;
        UINT Size2 = ConvertPTSize ( state.decl.VertexBufferDesc1.Size );&lt;br /&gt;
        if ( FAILED( m_pDevice-&amp;gt;CreateVertexBuffer( Size2, D3DUSAGE_WRITEONLY, 0, D3DPOOL_MANAGED, &amp;amp;info.pStreamData, NULL ) ) )&lt;br /&gt;
            return false;&lt;br /&gt;
&lt;br /&gt;
        // Save info&lt;br /&gt;
        MapSet ( m_AdditionalStreamInfoMap, state.stream1.pStreamData, info );&lt;br /&gt;
        pAdditionalInfo = MapFind ( m_AdditionalStreamInfoMap, state.stream1.pStreamData );&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    return pAdditionalInfo;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
*[[CAdditionalVertexStreamManager]]&lt;/div&gt;</summary>
		<author><name>Xtravax</name></author>
	</entry>
</feed>