View difference between Paste ID: j9JCeQWr and 2tB4zw4P
SHOW: | | - or go back to the newest paste.
1
void CVisibilityPlugins__RenderAlphaAtomics(CLinkList<AlphaObjectInfo> &list)
2
{
3
	char *nodeName;
4
5
	for(CLink<AlphaObjectInfo> *entry = list.m_tail.m_pNext; entry != &list.m_head; entry = entry->m_pNext)
6
	{
7
		nodeName = GetFrameNodeName(entry->m_info.m_pAtomic->object.object.parent);
8
9
		if(!strncmp(nodeName, "moving_rotor", 11))
10
		{
11-
			RwRenderStateSet(rwRENDERSTATEALPHATESTFUNCTION, rwALPHATESTFUNCTIONEQUAL);
11+
			{
12-
			RwRenderStateSet(rwRENDERSTATEALPHATESTFUNCTIONREF, 255);
12+
				RwRenderStateSet(rwRENDERSTATEALPHATESTFUNCTION, rwALPHATESTFUNCTIONEQUAL);
13
				RwRenderStateSet(rwRENDERSTATEALPHATESTFUNCTIONREF, 255);
14
15
				//AtomicDefaultRenderCallBack(entry->m_info.m_pAtomic);
16
				entry->m_info.m_pCallback(entry->m_info.m_pAtomic, entry->m_info.depth);
17-
			RwRenderStateSet(rwRENDERSTATEZWRITEENABLE, false);
17+
18-
			RwRenderStateSet(rwRENDERSTATEVERTEXALPHAENABLE, true);
18+
				RwRenderStateSet(rwRENDERSTATEZWRITEENABLE, false);
19-
			RwRenderStateSet(rwRENDERSTATEALPHATESTFUNCTION, rwALPHATESTFUNCTIONLESS);
19+
				RwRenderStateSet(rwRENDERSTATEVERTEXALPHAENABLE, true);
20
				RwRenderStateSet(rwRENDERSTATEALPHATESTFUNCTION, rwALPHATESTFUNCTIONLESS);
21
22
				//AtomicDefaultRenderCallBack(entry->m_info.m_pAtomic);
23
				entry->m_info.m_pCallback(entry->m_info.m_pAtomic, entry->m_info.depth);
24
			}
25
26
			// Restore renderstates.
27
			RwRenderStateSet(rwRENDERSTATEZWRITEENABLE, true);
28
			RwRenderStateSet(rwRENDERSTATEVERTEXALPHAENABLE, false);
29
			RwRenderStateSet(rwRENDERSTATEALPHATESTFUNCTION, rwALPHATESTFUNCTIONGREATER);
30
			RwRenderStateSet(rwRENDERSTATEALPHATESTFUNCTIONREF, 100);
31
		}
32
		else
33
		{
34
			//AtomicDefaultRenderCallBack(entry->m_info.m_pAtomic);
35
			entry->m_info.m_pCallback(entry->m_info.m_pAtomic, entry->m_info.depth);
36
		}
37
	}
38
}