How to render ultra-realistic looking models and textures in Blender? [closed]

I know I know, I sculpt a model, bake the textures >apply them and that’s it.

Come on, that can not be everything when it comes to ultra-realistic 3d models.

I have seen guys creating textures with applying 102381028310 stuff, like sub-surface scattering, then some extra layers of textures, once zoomed in, a user can see more textres that are like small and normally not rendered from far away.

Can you just make a list of such things that would not be included in the >bake them, difuse, AO, spec normal maps> apply them and that’s it.

So any extra technique that you know, please post it. Yes I know lightning is important but that is a whole different question. haha I probably sound a little bit irritated in this question, that is because I already asked in like 5 forums and no one is able to tell me some of the other techniques or whatever, so that I know where to expand my knowledge.

How to properly delete unwanted models

I am implementing bullets into my game, and each bullet has a lifetime. Whenever the bullet has existed for a set amount of time or collides with an object, the bullet should be deleted. I implemented the timer properly and whenever the bullet reaches the end of its life, it gets deleted. The problem occurs whenever I shoot another bullet. This instantly causes a crash with the code: Exception thrown at 0x044765D7 (nvoglv32.dll) in gravityGame.exe: 0xC0000005: Access violation reading location 0x00000000.

After some research, I’ve found that this usually means that I am trying to render something that is a nullptr. My thinking is that I am not deleting the previous bullet properly and this affects the new one. A single bullet object is created on startup, and every new bullet is copied using the following line of code:

std::shared_ptr<Bullet> bullet = std::make_shared<Bullet>(*std::dynamic_pointer_cast<Bullet>(modelsLoaded.at(i)));

The reason for the dynamic pointer cast is because it is in a vector of its base class that it inherits from. Whenever the bullet needs to get deleted, it is erased from the bullets vector using bullets.erase(bullets.begin()+index); and the object it is pointing to should go out of scope, there is nothing else pointing to it. I feel like somehow having that object getting deleted has an adverse effect on the other bullets in the vector, but I do not know how. A new object is created and all the data from the original bullet gets copied over. How could deleting a copy of an object mess with the other copied objects? The functions to create, and render the models are below.

Generate Model Function

    //binds id     glGenBuffers(1, &VBO);     glGenVertexArrays(1, &VAO);     glGenBuffers(1, &EBO);     glGenTextures(1, &texture);     glBindVertexArray(VAO);     glBindBuffer(GL_ARRAY_BUFFER, VBO);     glBufferData(GL_ARRAY_BUFFER, verticesSizeTexture * 8 * sizeof(float), verticesTexture, GL_STATIC_DRAW);     // position attribute     glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 8 * sizeof(float), (void*)0);     glEnableVertexAttribArray(0);     // color attribute     glVertexAttribPointer(1, 3, GL_FLOAT, GL_FALSE, 8 * sizeof(float), (void*)(3 * sizeof(float)));     glEnableVertexAttribArray(1);     glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, EBO);     glBufferData(GL_ELEMENT_ARRAY_BUFFER, indicesSizeTexture * 4, indicesTexture, GL_STATIC_DRAW);     //texture     glBindTexture(GL_TEXTURE_2D, texture);     glVertexAttribPointer(2, 2, GL_FLOAT, GL_FALSE, 8 * sizeof(float), (void*)(6 * sizeof(float)));     glEnableVertexAttribArray(2);      glBindBuffer(GL_ARRAY_BUFFER, 0);     glBindVertexArray(0); 

Rendering Function

    unsigned int transformLoc = glGetUniformLocation(shader->ID, "location");         glUniformMatrix4fv(transformLoc, 1, GL_FALSE, glm::value_ptr(trans));      glBindTexture(GL_TEXTURE_2D, texture);        glBindVertexArray(VAO);      glDrawElements(GL_TRIANGLES, indicesSizeTexture, GL_UNSIGNED_INT, 0);     glBindVertexArray(0);    

Destructor

glDeleteVertexArrays(1, &VAO); glDeleteBuffers(1, &VBO); glDeleteBuffers(1, &EBO); 

Update After removing the contents of the destructor, the problem goes away. However, I would like to have some sort of destructor to allow for the proper freeing of memory.

Specifying statistical models / Equations between Random Variables

I’m new to Mathematica and confused about how random variables work.

Say I have a standard normal random variable $ X\sim \mathcal N(0,1)$ and set $ Y := 2X$ . Then $ \operatorname{Cov}(X,Y) = 2$ . Now if I generate $ N$ -iid. draws for $ X$ , the sample covariance of $ X_1,\dots, X_N$ and $ Y_1,\dots, Y_N$ with $ Y_n := 2X_n$ should be close to $ 2$ .

My question is: how can I compute statistics (e.g. sample covariance) in Mathematica? Naively, I tried

x:=RandomVariate[NormalDistribution[], 5000] y:=2*x Covariance[x,y] 

but the result is clearly incorrect (usually not close to $ 2$ ), because in actuality (I presume) under this model $ Y$ is independent of $ X$ .

What is the most convenient way of achieving the correct result?

Real value of MAC models in Linux

I have read about MAC vs. DAC in the Internet, but I still fail to understand, what kind of attack it is impossible to protect against if one only uses DAC+capabilities in comparison to MAC+DAC+capabilities. If a process does not run as root and lacks CAP_DAC_OVERRIDE, CAP_FOWNER and other dangerous capabilities, it cannot overcome the already assigned ownership and ACL’s of the resources it uses. On the other hand, if a process runs as root and has CAP_MAC_ADMIN, it can overwrite the security context enforced by MAC.

So is MAC "just additional layer of protection" without any real advantage on modern Linux system?

Hidden Markov Models for Hand Gestures

I am completing a final year project for hand gesture recognition using Hidden Markov Models

I have a fair understanding of Hidden Markov Models and how they work using simple examples such as the Unfair Casino and some Weather examples.

I am looking to implement multiple Hidden markov models where each model corresponds to a single gesture, similarly to this paper where the observed states are the angles between the coordinates of different points. This would create a sequence of numbers from 0 to 18 as seen in Figure 3 and Figure 4. .

What would the hidden states be in terms of this scenario?

The weather example has the observations ‘Walk’, ‘Shop’ and ‘Clean’ which would be the numbers 0-18 in the hand gesture case, however I do not know what the states ‘Rainy’ and ‘Sunny’ would correspond to in the hand gesture scenario.

Terms for different models of sum types

There seem to be at least a couple different possible ways of modeling sum types in a type system, but I haven’t been able to find consistent terms for referring to them:

  1. A sum type is formed from a set of "data constructors", which are function-like entities that notionally map values of a summand type to values of the sum type. This is the model adopted by e.g. Haskell and the various flavors of ML.

  2. A sum type is formed directly from the underlying summand types, with no data constructors, and as a consequence the sum type is a supertype of the summands (or at least behaves very much like one). This model seems to be much less common, but it’s the model adopted by Ceylon, and by C++’s std::variant.

Note that this is separate from the distinction between discriminated and non-discriminated unions: both models permit the sum type to be discriminated (although only if the summands are disjoint, in the case of #2).

Are there settled terms for distinguishing these two models?

Exporting models from Crocotile3D to Unreal Engine 4 (.obj). Texures are always blurry. I want crisp, clean textures

Can anyone help me? I am exporting models with textures (.obj) from Crocotile3D to Unreal Engine 4. I want them to be crisp and clear, as in the left image (Crocotile editor), but only get blurry, as in the right image (Unreal editor). Whether I export the model at scale x 1 or greater doesn’t make any difference. My textures are 16×16 pixels.

I have watched endless videos and tinkered with settings but been stuck for two days. Any help or advice will be much appreciated!

Crocotile3D,, Unreal Editor, Crocotile Eport Settings

land-cover classification (matlab) (maximum likelihood) Gaussian models [closed]

Remotely sensed data are provided as 6 images showing an urban area, with the ground-truth information. These images have already been registered. You are required to implement the Maximum Likelihood (ML) algorithm to classify the given data into four classes, 1 – building; 2 – vegetation; 3 – car; 4 – ground. By doing so, each pixel in the images will be assigned a class. There are four objectives to achieve the final classification goal.

To select training samples from given source data based on information in the given ground truth (at least 20 training samples for each class)

To establish Gaussian models for each class with the training samples;

To apply maximum likelihood to the testing data (measured data) and classify each pixel into a class;

To evaluate the classification accuracy by using a confusion matrix and visual aid (colour coded figures).