Vous Rencontrez Des Problèmes Avec L’exemple Spotlight DirectX ?

Réparez votre ordinateur maintenant.

  • Étape 1 : Téléchargez et installez ASR Pro
  • Étape 2 : Ouvrez le programme et cliquez sur "Analyser le PC"
  • Étape 3 : Cliquez sur "Réparer maintenant" pour démarrer le processus de réparation
  • Accélérez votre ordinateur aujourd'hui avec ce téléchargement simple et gratuit.

    J’espère que cet article d’opinion vous aidera si vous avez trouvé l’exemple DirectX Spotlight.

    ##Introduction##Dans le didacticiel de l’élément, nous apprendrons par quelle méthode créer un point culminant a. Nous utilisons ce projecteur pour la caméra vidéo numérique. Ce tutoriel est basé sur le tutoriel webcam d’ego.##Facteurs SpotLight##Les projecteurs affichent simplement des zones, mais avec une direction. Pour cette raison spécifique, créons directement notre implémentation du minimum de points en ajoutant juste une direction et une seule valeur qui représente la taille du cône de notre projecteur.##Direction##Cela sera probablement représenté par un vecteur de modèle 3D, également appelé dir dans notre indicatif régional, où la première valeur est l’axe exact du bouton de retour, la seconde digne de l’axe ymca et la troisième valeur est le z . axe. Vouloir##Cône##Le cône est représenté dans votre propre stratégie par une valeur errante nommée le cône. Cette valeur est une énorme mesure spécifique de notre situation mise en évidence. En mettant à jour cela, nous établissons la zone du cône incluant notre phare. Un taux inférieur correspond à un cône plus grand, et une valeur supérieure correspond à un cône de taille réduite.##Équation SpotLight##Rappelez-vous que les projecteurs sont planifiés par des sources lumineuses ponctuelles, donc tout le monde a juste besoin d’ajouter une petite équation supplémentaire qui émet de la lumière dans une direction spécifique importante à travers la bobine plutôt que dans des directions comme une source ponctuelle de rayons solaires.##Définir le cône de lumière##Voici la seule nouvelle situation possible que nous ajouterons à notre fichier de marqueurs. Cela crée votre bobine à travers laquelle notre lumière brillera certainement.Tout d’abord, nous devons trouver cette position particulière de notre direction entre les sources lumineuses spécifiques et la direction facile spécifique dans le pixel. Nous prenons le produit division de transport qui le trouverait.Ensuite, je dirais que nous utilisons la fonction max pour nous assurer que nos employés n’obtiennent pas un produit scalaire réel inférieur à 0,0f. Derrière cette position du phare à cet égard sera un point de moins pour pouvoir 0.0f, d’où la lumière vive moins que seulement dans le premier phare, mais aussi dans le phare.Enfin, nous allons avec une frange avec un cône de lumière soucieux de la fonction ainsi que de tout exposant. Ceci complète toute équation indiquant notre cône de lumière.finalColor *= pow(max(dot(-lightToPixelVec, light.dir), 0.0f), light.cone);##Structure légère##Comme vous pouvez le voir, notre société a changé la structure de base, ajoutant en fait deux nouveaux invités. Un pour le guidon et un individuel pour ce cône réglable. lumière structurante Brillant() ZeroMemory(this,sizeof(Light)); XMFLOAT3pos ; zone flottante ; Répertoire XMFLOAT3 ; flotteur conique; XMFLOAT3at ; flotteur 2 ; environnement XMFLOAT4 ; traductions XMFLOAT4 ; ;##Description liée à la source lumineuse principale##Ici, nous décrivons notre douceur. Nous définissons sa posture sur 0,1,0 (ce n’est pas grave puisque nous le mettons généralement à jour plus tard), la plage réelle sur 1000.0f (donc nous ne “coupons” pas vraiment l’indicateur de contrôle d’une manière ou d’une autre), la décroissance att0 particulière à 0 .4f (pour que ce type de lumière ne devienne pas trop rayonnant lorsqu’il est proche d’un appareil photo) et att1 par 0,02f afin que je puisse personnellement trouver une quantité constante en raison de l’atténuation, puis nous réglons la bobine sur la meilleure valeur ici à 20,0 F.Gardez à l’esprit que tous ces types de fichiers peuvent potentiellement être modifiés par vous-même en fonction de vos besoins. Vous verrez rapidement à quel point votre éclairage unique peut être flexible avec ces raisons. Jouez avec eux pour comprendre les meilleures façons dont ils fonctionnent.lumière.pos = XMFLOAT3(0.0f, 1.0f, 0.0f);light.dir signifie XMFLOAT3(0.0f, 0.0f, 1.0f);la zone lumineuse est égale à 1000.0f ;lumière.cône 20.0f ;lumière.att = XMFLOAT3(0.4f, 0.02f, 0.0f);ampoule ambiante = XMFLOAT4(0.2f, 0.2f, 0.2f, 1.0f);light.diffused signifie XMFLOAT4(1.0f, 1.0f, 1.0f, 1.0f);## Mettre à jour chacune de nos positions des lumières ##Étant donné que les individus vont utiliser ce phare même comme notre nouvelle lampe de poche, nous voulons pointer le cône de direction dans cette direction où va le meilleur appareil photo, en d’autres termes, dans l’intention du vecteur de recherche de notre appareil photo point-and-shoot. Nous voulons également que l’industrie de la lampe de poche occupe cette position de ces caméras, pour cela nous appliquerons le vecteur de position associé à la caméra d’une personne. Cela sera mis à jour à chaque scène, nous mettrons donc votre code dans la fonction updateScene.light.pos.x est XMVectorGetX(camPosition);light.pos.y = XMVectorGetY(camPosition);light.pos.z = XMVectorGetZ(camPosition);light.dir.x façons XMVectorGetX(camTarget) – light.pos.x;light.dir.y = XMVectorGetY(camTarget) – light.pos.y ;light.dir.z = XMVectorGetZ(camTarget) – light.pos.z ;##Fichier d’effets##Présentation d’une nouvelle structure de rayons HLSL, pour le moment avec un parcours de mise en forme et la meilleure valeur de flottement pour votre cône à jour. lumière structurante float3pos ; aller zone; répertoire float3 ; flotteur conique; float3att ; environnement Float4 ; flotteur calme4 ; ;Voici notre scène PS progressive qui est au programme de l’attention. Nous avons énuméré ce que la situation fait ci-dessus, donc si vous avez des raisons de croire que vous ne l’avez pas compris, le public peut continuer à lire. Vérifiez-le mentionné ci-dessus et vérifiez-le directement dans les commentaires. La seule nouvelle aide du pixel shader passe par la nouvelle équation de direction en bas. float4 PS (entrée VS_OUTPUT) : SV_TARGET { input.normal est égal à normalize(input.normal); float4 dispel = ObjTexture.Sample(ObjSamplerState, input.TexCoord); quantité couleur float3 = float3(0.0f, 0.0f, 0.0f); // Crée un angle entre la position du petit vecteur et la position du pixel float3 lightToPixelVec = light.pos tel que input.worldPos ; // Trouver la distance en utilisant la position de la lumière naturelle et la position des pixels float d est égal à la taille (lightToPixelVec); // Ajout de lumière ambiante float3 finalAmbient est égal à calm * light.ambient; // Si le pixel est trop loin, renvoyez le pixel avec une lumière ambiante colorée si ( g > light.range ) Return Float4(finalAmbient, diffuse.a); // Convertit lightToPixelVec en fonction d’un vecteur d’espace unitaire descriptif //direction p tirée de la position lampe

    Accélérez votre ordinateur aujourd'hui avec ce téléchargement simple et gratuit.