Come Posso Ripristinare L’hardware Del Computer Istanziando DirectX 9?

Il tuo PC è lento e lento? È afflitto da misteriosi messaggi di errore e arresti anomali? Se è così, allora hai bisogno di Reimage � il software definitivo per correggere gli errori di Windows e ripristinare le prestazioni ottimali.

In questa guida a sua volta, ci assicureremo di rivelare alcuni dei possibili stimoli che potrebbero causare la generazione di directx come hardware e quindi la maggior parte rivelerà i modi abbastanza semplici in cui puoi provare a risolvere questo problema.

Ok, ci sto lavorando da un po’ di tempo ed ecco cosa ho acquistato. È stato compilato e fornito prima che provassi a creare un’istanza di uno shader particolare. Ora non si compila e inoltre mi chiedo anche come sto effettivamente. Ho appena modificato e la marca che ho appena ottenuto crea una fotocamera fondamentale da selezionare.

hlsl è più o meno lo stesso di quello visualizzatoe il file di tag h2 principalee testa della telecamera

/************************************* ****** ******** ** * ********************* TUTORIAL PER FARTUN PRESENTATI DA MORROWLAND ****** ******** *********** 2 . * ***************************************** *** Nome progetto: Camera2 * * Descrizione del progetto: movimento della telecamera in aggiunta alla rotazione * * Tipo di progetto: DirectX 3D ** Autore: Ronnie Andre Reierstad ** Sito web: www.morrowland.com ** Email: [email protected] com ** Versione: inglese (Regno Unito) ** Data: 18/12/2003 ******************************** **** ************************ **** ** ************* / #includere "main.h "HDC hdC implica NULL; // Dispositivo GDI privato ContextHWND hWnd = NULL; // Contiene un handle per la nostra finestra HINSTANCE hInstance; // contiene un modello di applicazione LPDIRECT3D9 pD3D = NULL; // DirectX 3D versione 9LPDIRECT3DDEVICE9 pD3DDevice = NULL; // Chiave dispositivo DirectX 3D Render[256]; // Array utilizzato per la tastiera Routinebool active=TRUE; // Imposta l'attenzione della finestra flagSet su TRUE by fullscreen Defaultbool fullscreen=TRUE; // Indicatore impostato su schermo intero creato per impostazione predefinita wrld[300];// Textures.LPDIRECT3DTEXTURE9 Texture = NULL;UINT uPasses; //usato per i pass per le mostreD3DXMATRIX matTrans;D3DXMATRIX matView; D3DXMATRIX worldViewProjection;D3DXMATRIX project_matrix;D3DXMATRIX IdentityMatrix;D3DXMATRIX translation_matrix;D3DXMATRIXrotation_matrix;D3DXMATRIX modelViewProj; // Controllo rotatore cubo in virgola mobile g_fSpinY;float g_fSpinX;float g_fSpinZ;float b;int f2 è uguale a sizeof(FLOAT)*2;int f3 implica sizeof(FLOAT)*3;int f4 è uguale a sizeof(FLOAT)*4; D3DVERTEXELEMENT9 SDEC [] = 4, 0, D3DDECLTYPE_FLOAT4, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_POSITION, 0, 2 // pos, f4, D3DDECLTYPE_FLOAT2, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TEXCOORD, 0, 2 // Tex0, f4 + F2, D3DDECLTYPE_FLOAT3, D3DDECLUSAGE_TEX0, 2 // Tex0, 2, TEXCOORD f4 + F2, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD // base 3, f2 + f3 + F4, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TANGENT, 0, // tangenziale 4, f4 + F3 + F2 + F3, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_BINORMAL , 0 , // binormale D3DDECCLUSAGE_BINORMAL, 1 , // binormale D3DDECLUSAGE_BINORMAL, nil , // binormale ,// //////////////NEW////////// // /// //////NOVITÀ///////// /// /////NOVITÀ//////////////CCera objCamera; LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); // Dichiarazione per molti WndProc////////////////////////////////////// / / / / /////// Carica file .X//////////////////////////// /// // /// contro ///////////////////void LoadXFile_NoTexture( char* MeshFilename, ID3DXMesh* &Mesh) //Zero mesh e Crea mesh buffer uguale a 0; ID3DXBuffer* MeshBuffer significa 0; // Carica anche la mesh progettata D3DXLoadMeshFromX( MeshFilename, D3DXMESH_MANAGED, pD3DDevice, &MeshBuffer, 0, 0, 0, &Mesh); Mesh-> OptimizeInplace(D3DXMESHOPT_ATTRSORT // crea l'effetto da un determinato file ma genera anche un errore se c'è molto vuoto LoadEffect(char* EffectFilename, ID3DXEffect* &d3dEffect) ID3DXBuffer* d3dErrors = NULL; D3DXCreateEffectFromFile(pD3DDevice, EffectFilename ,NULL, NULL, D3DXSHADER_OPTIMIZATION3 , NULL , &d3dEffect , &d3dErrors); if(d3dErrors) MB_ICONEXCLAMATION); d3dErrors->Rilascio(); uscita(-1); HRESULT hr = d3dEffect->ValidateTechnique(d3dEffect->GetTechnique(0));//fine funzione//////////////////////// per / / ///////////////////////////////////////////////////////////// /// /// // per ogni /////////// RIDIMENSIONA SCENA D3D/////////////////// //// ///// //// /////////////////////////// ////// ////////////////// ////// /////// ////// / void ReSizeD3DScene(int width, int height) // Ridimensiona e inizializza la finestra home DX if (height==0) // Divide per zero per altezza = 1; // altezza del collo uguale a D3DXMatrixPerspectiveFovLH(&projection_matrix, 45.0f, (float)640/(float)480, 1.0f, 1000.0f ); pD3DDevice->SetTransform(D3DTS_PROJECTION, &(D3DMATRIX)projection_matrix); /////////////////////////////////////////////////////////////// // // / / / //////////////////////////////////////////////////////////////////// THE DIRECT3D InitD3D() init/ // e /////////////////////////////////////////////////////////// ////// /// // / //////////////////////////int D3DXMatrixIdentity( &projection_matrix); D3DXMatrixPerspectiveFovLH(&projection_matrix, 45.0f, (float)640/(float)480, 0.1f, 1000.0f ); pD3DDevice->SetTransform(D3DTS_PROJECTION, &(D3DMATRIX)projection_matrix); pD3DDevice->SetRenderState(D3DRS_ZENABLE, TRUE); // Buffer Z (buffer di profondità) pD3DDevice->SetRenderState(D3DRS_CULLMODE, TRUE); // Disabilita l'eliminazione del lato posteriore pD3DDevice->SetRenderState(D3DRS_LIGHTING, FALSE); // spegni la luce//NOVITÀ////////////////NOVITÀ/////////////////NOVITÀ//// // //////////NOVITÀ//////////////////////// // Vista dall'alto della posizione di lavoro (vettoriale) objCamera.Position_Camera(-15, 0.5f , - 15 , 5 , 0.5f, 0, 0, 1, 0);//NOVITÀ/////////////////////////////////////////////// /// - ////NOVITÀ/////////////////NOVITÀ//////////////// LoadEffect("Instance.fx ", effectShader) ; LoadxFile_Notexture("sphere.x", Cubemesh); DWORD TatTrees è 300; D3DVERTEXELEMENT9 verexelementsGeMeDe_float3, d3ddeclmethod_default, d3ddeclusage_Position, 0, 0, 15, d3ddecltype_float3, d3ddeclmet_default, d3ddeclusage_normal, 0, 0, 29, D3DDECLTYPE_FLOAT2, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TEXCOORD, 0, 1, 5, D3DDECLTYPE_FLOAT4, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TEXCOORD, 1, 1, 08, D3DDECLTYPE_FLOAT4 ; gvSizegeom = D3DXGetDeclVertexSize(VertexElementsGeom, 0); gvSizeInst = D3DXGetDeclVertexSize ( VertexElementsGeom, 1);pD3DDevice->CreateVertexDeclaration(VertexElementsGeom, &ShaderDeclaration è il tuo modello preferito hx-safe spec);//se contiene solo position, diffuse e texcoordCubeMesh->GetVertexBuffer(&VB);CubeMesh->GetIndexBuffer ( &IB) ;pD3DDevice- >CreateVertexBuffer (gvSizeInst * numTrees, D3DUSAGE_WRITEONLY, NULL, D3DPOOL _MANAGED, &gVBufferInst, NULL);D3DXVECTOR3 ppos, prot;for(int nited Kingdom = 0; k < numtrees; k++) // in posizione grande anche rotazione pos .x è rand() per cento 1000; ppos.y = 0; ppos.z è anche rand() 1000; D3DXMatrixIdentity(% &wrld[k]); D3DXMatrixTranslation( &translation_matrix, ppos.x, ppos.y,ppos.z); D3DXMATRIX* pData sembra indicare 0;gVBufferInst->Lock(0, (LPVOID*)&pData, 0, 0);memcpy(pData, wrld, gvSizeInst numTrees) ;gVBufferInst->Unlock();DWORD numVert = CubeMesh->GetNumVertices ();DWORD numInd significa CubeMesh->GetNumFaces(); // Direi carica, vedi, la decalcomania. if(D3DXCreateTextureFromFile(pD3DDevice, "gothic.png", &Texture) != D3D_OK) restituisce false; // Crea una dichiarazione di vertice affidabile. //if(pD3DDevice->CreateVertexDeclaration(SDec, &ShaderDeclaration) D3D_OK) != // restituisce false; //CubeMesh->CloneMesh(D3DXMESH_MANAGED, SDec, pD3DDevice, &CubeMesh);//immagine indica 1 pD3DDevice->SetSamplerState(0, D3DSAMP_MAGFILTER, D3DTEXF_LINEAR); pD3DDevice->SetSamplerState(0, D3DSAMP_MINFILTER, D3DTEXF_LINEAR); pD3DDevice->SetSamplerState(0, D3DSAMP_MIPFILTER, D3DTEXF_LINEAR); pD3DDevice->SetSamplerState(0, D3DSAMP_MAXANISOTROPY, 16); // Indica che una certa texture particolare è affiancata. pD3DDevice->SetSamplerState(0, D3DSAMP_ADDRESSU, D3DTADDRESS_WRAP); pD3DDevice->SetSamplerState(0, D3DTADDRESS_WRAP); Restituisce d3dsamp_addressv, VERO;////////////////////////////////////////////////////////// ///// //////////////////////////////////////////////////////// ///// // / /// ////////////////////////////// /// RENDERING DIRETTO 3D////// // // /// ///////////////////////// ////// ////////////////// ////// ///////// // // /// ////////////////////// ////int DrawD3DScene() { //NUOVO/////// // // /// //NOVITÀ/////////////////NOVITÀ /////// //////////NOVITÀ// // // /// //////// // Usa la seguente funzione per la nostra telecamera target Direct3D // Mostra che questa matrice D3DXMatrixLookAtLH(&matView, // aggiorna solitamente la vista matrice &D3DXVECTOR3(objCamera.mPos.x, objCamera . mPos.y anche , objCamera.mPos.z) , &D3DXVECTOR3(objCamera.mView.x, objCamera.mView.y, objCamera.mView.z), &D3DXVECTOR3(objCamera.mUp.x , objCamera.mUp.y, objCamera.mUp .z) ) : pD3DDevice->SetTransform(D3DTS_VIEW,&matView);// Apply changepD3DDevice->Clear( 0, NULL, D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER, D3DCOLOR_COLORVALUE(0.0f,0.0f,0.0f,0.0f), 1.0f, 0 ); pD3DDevice->Avvia scena(); // avvia la scena D3DXMATRIX matWorld; D3DXMatrixIdentity(&matWorld); // La rotazione del cubo sopprime g_fSpinX = g_fSpinX + 0.5; g_fSpinY è infatti uguale a g_fSpinY + 0,5; g_fSpinZ implica g_fSpinZ + 0,5; D3DXMatrixTranslation( &translation_matrix, 0, 0.0f,0 ); // definito considerando la rotazione x,y,z D3DXMatrixRotationYawPitchRoll(&rotation_matrix, D3DXToRadian(g_fSpinX), D3DXToRadian(g_fSpinY), D3DXToRadian(g_fSpinZ));

Non puoi sbagliare con questo strumento di correzione di Windows. Se riscontri problemi, fai clic su di esso e i tuoi problemi saranno risolti.