Free textures: where to get 3d textures for your artwork

Gratisography

If you need something surreal, fun, and original, Gratisography is like a breath of fresh air.        

This collection was created by talented graphic designer Ryan McGuire, who likes everything quirky.

His photos have a surreal edge and they are perfect if you’re sick and tired of stock photo clichés.

Compared to other websites mentioned here, Gratisography has less variety of free stock images, but new pictures appear every week and you’re sure to stand out from the crowd.

The photos are available in 9 different categories: animals, business, fashion, food, nature, objects, people, urban and whimsical.

All pictures are free to use and you do not need to credit Ryan McGuire but he will be thankful if you do.

Skyboxes

If you want to vary the background in your model, the easiest way to do this is to use a skybox in Enscape. You can load it right into your model via the Atmosphere tab of the Settings menu: Skybox as a background. Skyboxes loaded into Enscape must be either in Longitude/Latitude (panorama) or cross format. For more information, check out our Knowledge Base article on this topic.

Why skyboxes are important to architectural design

Take a look at our model with two different skyboxes applied; just that little adjustment changes the atmosphere completely! The generic Enscape sky is a nice backdrop by itself, but if you have a specific location in mind for the building, using a skybox can transport your client there with one click. Even if you are not aiming to represent a specific location, you can use skyboxes to lend a certain atmosphere to the rendering. Use a forest skybox for a more intimate, rustic feeling, or any residential street to ground the scene in reality.

Use the Enscape sky for a more universal look…

…or add a skybox to place your model in a specific location!

Where to find free skyboxes

1. Enscape Backgrounds (Revit, SketchUp, Rhino, Archicad, Vectorworks)

You can download a collection of 12 skyboxes directly from our website. They are HDR backgrounds in cross format, which can immediately be loaded into Enscape.

2. Textures.com (Revit, SketchUp, Rhino, Archicad)

Textures.com doesn’t just have a lot of high-quality textures, they also have HDR panoramas available. They have a nice selection available, though with your daily free credits, you are only able to download the smallest image size.

3. Texturify (Revit, SketchUp, Rhino, Archicad)

On Texturify you’ll find both sky background and environment panoramas. The environment panoramas are great if you want to set up a scene to make it look like your building is situated along a city street, or a more exotic location. You can download high-quality panoramas without registering and with just one click.

4. Poly Haven (Revit, SketchUp, Rhino, Archicad)

Poly Haven (formerly HDRI Haven) is one of my favorite resources for free high-quality panoramas. They have everything from urban backgrounds to countryside scenes. All of the panoramas are free and available in varying qualities, from 1K to 16K.

3. sIBL Archive (Revit, SketchUp, Rhino, Archicad)

The sIBL Archive has upwards of 100 free high-quality panoramas available for immediate download. You don’t need to register an account, just choose your panorama and with one click, download a ZIP file containing varying resolutions of the image.

6. Make Your Own!

If you didn’t find a skybox from one of these sources, or if you are going for that extra level of realism, consider making your skybox! Enscape supports skybox image files (*.hdr, *.bmp, *.jpg, *jpeg, *png, *tif, *.tiff, *.tga) either in cross or panoramic (Longitude/Latitude) format. Panoramic skyboxes should have a resolution ratio close to 2:1. You can, for example, take a panorama of the site where your future building is to be situated to show your client exactly what the view from their future office will look like.

Adding Custom Section Headers

Play around with the starter app and you’ll observe:

  1. The app displays 20 photos related to each word search.
  2. It creates a new section in the same for each search you perform.

There are no section headers in the UICollectionView. So for your first task, you’ll add a new section header using the search text as the section title.

To display this section header, you’ll use . This class is like , except it’s usually used to display headers and footers. Like cells, places them in a reuse queue rather than deleting them when they scroll out of the visible bounds.

You’ll add this element directly to the storyboard and create a subclass so it can dynamically update its title.

Creating a UICollectionReusableView Class

Create a new file to represent the custom class for the header.

  • Select File ▸ New ▸ File. Select Cocoa Touch Class.
  • Choose Subclass of UICollectionReusableView.
  • Name the class FlickrPhotoHeaderView.
  • Leave Also create XIB file unchecked.
  • Select as the language.
  • Click Next.

Select the starter app project’s Views folder and click Create to create the file.

Next, open Main.storyboard and select the collection view in . Select the Attributes inspector and, in the Accessories section, check the Section Header checkbox. Notice a Collection Reusable View appears in the storyboard underneath the Collection View.

Setting the Section Header View Class

Now, you’ll set your custom class as the section header view. To do this:

  • Select the Collection Reusable View added in the collection view.
  • Open the Identity inspector and set the Class in the Custom Class section to FlickrPhotoHeaderView.
  • Next, in the Attributes inspector, set the Identifier to FlickrPhotoHeaderView.
  • Also set the Background color to Opaque Separator Color to give it a nice offset from the rest of the collection view.
  • Open the Size inspector and set the Height to 90.

Now open the Object library with the key combination Command-Shift-L and drag a Label onto the reusable view. Use the Auto Layout align button at the bottom of the storyboard window to pin it to the horizontal and vertical center of the view. In the Attributes inspector of the label, update the font to System 32.

Connecting the Section Header to Data

Open FlickrPhotoHeaderView.swift in an additional editor pane and Control-drag from the label in the header view over to the file and name the outlet titleLabel. It will add the following code:

class FlickrPhotoHeaderView: UICollectionReusableView {
  @IBOutlet weak var titleLabel: UILabel!
}

Finally, you need to implement a new data source method to wire everything together. Open FlickrPhotosViewController+UICollectionViewDataSource.swift and add the following method:

override func collectionView(
  _ collectionView: UICollectionView,
  viewForSupplementaryElementOfKind kind: String,
  at indexPath: IndexPath
) -> UICollectionReusableView {
  switch kind {
  // 1
  case UICollectionView.elementKindSectionHeader:
    // 2
    let headerView = collectionView.dequeueReusableSupplementaryView(
      ofKind: kind,
      withReuseIdentifier: "\(FlickrPhotoHeaderView.self)",
      for: indexPath)

    // 3
    guard let typedHeaderView = headerView as? FlickrPhotoHeaderView
    else { return headerView }

    // 4
    let searchTerm = searches.searchTerm
    typedHeaderView.titleLabel.text = searchTerm
    return typedHeaderView
  default:
    // 5
    assert(false, "Invalid element type")
  }
}

This method returns a view for a given kind of supplementary view. For this app, you only have headers, but you can also have other kinds of supplementary views.

Here’s the breakdown of this method:

  1. Handle the kind which supplies for you. By checking the header box in an earlier step, you told the flow layout to begin supplying headers. If you weren’t using the flow layout, you wouldn’t get this behavior for free.
  2. Dequeue the header using the storyboard identifier.
  3. Check that the view is the right type and, if not, simply return it.
  4. Set the search term as the text on the view’s label.
  5. Assert in the case that the kind was not what was expected.

This is a good place to build and run. You’ll get a nice section header for each search, and the layout adapts nicely in rotation scenarios on all device types:

Bravo! It’s a small change, but the app looks so much better now, doesn’t it? :]

But there’s more work to do!

Where to Find Amazing Illustrations, Cartoons, Vectors

We’ve looked at photographic image assets, so another way of creating the visual presence that you need is illustrations. Illustrations can illustration ideas and concept, often very complicated one with a simplicity and clarity that is difficult in text. Added to this they can be creative and imaginative and so are able to score highly on the style scale. Plus there are many styles and techniques, that enable you to set a tone or atmosphere on your website and business in general. Cartoon, caricatures,  hand-drawn, street art, graffiti, classic pencil, futuristic, graphic -really a vast choice. So let’s take a look at some fantastic sources, where you can find the assets which will be an asset.

16. GraphicMama

Vast selection of high-quality vector graphic illustrations in all techniques, available in bundles of a character or characters (different poses, emotions, backgrounds etc) plus other design bundles such as infographics, backgrounds, patterns, logos or themed bundles and so on.  Also custom work and animated puppets. A great selection.

Type: Dozens of free illustrations and graphic assets, and a huge collection of premium design bundles and assets with simple license types. GraphicMama also offers up to 80% discounts for their big credit batches, so, for example, a 241 colorful vector backgrounds bundle which standard price is $32, could cost you less than $8, if you get a bigger credit batch.

17. VectorCharacters

vectorcharacters.net is ideal for cartoon characters in sets of poses and emotions. There are other sets too, including emojis, clip art, vector icons, all searchable through category. A lovely choice of all for free.  illustrations. click and download the set the choose you favorite ones. Ideal for presentations, to keep consistency with the same base illustration throughout.

Type: Huge free selection with some paid-for premium product links.

18. FreePsdFiles

A large range of downloadable psd files. freepsdfiles.net creates all sorts of psd assets including graphics, templates,  backgrounds,  business cards,  flyers, and PhotoShop resources.

Type: Free for all usage

19. OpenDoodles

Open Doodles is a set of free illustrations that you can copy, edit, remix, share, or redraw these images for any purpose without restriction under copyright. Quite a limited selection but good quality sketches and includes a generator allowing you to edit on the site. Individual sketches or composition ones.

Type: Free for personal and commercial.

20. UseSmash

Over 250 illustration categorized objects as character, web elements, objects, or scenes. Premium paid version has over 500 and includes UX and UI creator tools.

Type: Free for commercial and personal or paid premium version $99 per annum.

21. Humaaans

Humaaans is designed to let you mix and match a character to your own needs, changing clothes, hairstyles, poses and backgrounds. You’ll need a project design tool such as Adobe or Sketch and then get mixing.

Type: Free for commercial and personal use. Voluntary payment possible

22. Absurd.design

Absurdist, surreal illustrations. 15 free illustrations for free in PNG format, other paid options, Very different.

Type: Free for all usages but requires a link, optional membership scheme $57 per quarter.

23.

SVG  illustrations, free ones in two different styles (colored or Black & white lined)  for free,  plus premium illustration systems with packs, and animations. Editable with vector editing tools.

Type: Free or Premium paid

defaultdict objects¶

class (default_factory=None, , …)

Return a new dictionary-like object. is a subclass of the
built-in class. It overrides one method and adds one writable
instance variable. The remaining functionality is the same as for the
class and is not documented here.

The first argument provides the initial value for the
attribute; it defaults to . All remaining arguments are treated the same
as if they were passed to the constructor, including keyword
arguments.

objects support the following method in addition to the
standard operations:

(key)

If the attribute is , this raises a
exception with the key as argument.

If is not , it is called without arguments
to provide a default value for the given key, this value is inserted in
the dictionary for the key, and returned.

If calling raises an exception this exception is
propagated unchanged.

This method is called by the method of the
class when the requested key is not found; whatever it
returns or raises is then returned or raised by .

Note that is not called for any operations besides
. This means that will, like normal
dictionaries, return as a default rather than using
.

objects support the following instance variable:

This attribute is used by the method; it is
initialized from the first argument to the constructor, if present, or to
, if absent.

Changed in version 3.9: Added merge () and update () operators, specified in
PEP 584.

GrabCAD

GrabCAD is different than the databases we have looked at so far. Firstly, GrabCad provides you with technical, engineering, and scale models only. Secondly, it lets you filter its database based on the 3D modeling software that the designs were created in. It’s the place to be for anyone looking for more than 27,000 technical 3D files. However, take into account that this website is not intended for 3D printing.

GrabCAD is all about downloading technical 3D models

GrabCAD facts: Focus on 3D printing: No Price: Free Target: Professionals interested in technical/engineering parts Size: 27,000 Models

deque objects¶

class (iterable, maxlen)

Returns a new deque object initialized left-to-right (using ) with
data from iterable. If iterable is not specified, the new deque is empty.

Deques are a generalization of stacks and queues (the name is pronounced “deck”
and is short for “double-ended queue”). Deques support thread-safe, memory
efficient appends and pops from either side of the deque with approximately the
same O(1) performance in either direction.

Though objects support similar operations, they are optimized for
fast fixed-length operations and incur O(n) memory movement costs for
and operations which change both the size and
position of the underlying data representation.

If maxlen is not specified or is , deques may grow to an
arbitrary length. Otherwise, the deque is bounded to the specified maximum
length. Once a bounded length deque is full, when new items are added, a
corresponding number of items are discarded from the opposite end. Bounded
length deques provide functionality similar to the filter in
Unix. They are also useful for tracking transactions and other pools of data
where only the most recent activity is of interest.

Deque objects support the following methods:

(x)

Add x to the right side of the deque.

(x)

Add x to the left side of the deque.

()

Remove all elements from the deque leaving it with length 0.

()

Create a shallow copy of the deque.

New in version 3.5.

(x)

Count the number of deque elements equal to x.

New in version 3.2.

(iterable)

Extend the right side of the deque by appending elements from the iterable
argument.

(iterable)

Extend the left side of the deque by appending elements from iterable.
Note, the series of left appends results in reversing the order of
elements in the iterable argument.

(x, start, stop)

Return the position of x in the deque (at or after index start
and before index stop). Returns the first match or raises
if not found.

New in version 3.5.

(i, x)

Insert x into the deque at position i.

If the insertion would cause a bounded deque to grow beyond maxlen,
an is raised.

New in version 3.5.

()

Remove and return an element from the right side of the deque. If no
elements are present, raises an .

()

Remove and return an element from the left side of the deque. If no
elements are present, raises an .

(value)

Remove the first occurrence of value. If not found, raises a
.

()

Reverse the elements of the deque in-place and then return .

New in version 3.2.

(n=1)

Rotate the deque n steps to the right. If n is negative, rotate
to the left.

When the deque is not empty, rotating one step to the right is equivalent
to , and rotating one step to the left is
equivalent to .

Deque objects also provide one read-only attribute:

Maximum size of a deque or if unbounded.

New in version 3.1.

In addition to the above, deques support iteration, pickling, ,
, , , membership testing with
the operator, and subscript references such as to access
the first element. Indexed access is O(1) at both ends but slows to O(n) in
the middle. For fast random access, use lists instead.

Starting in version 3.5, deques support , ,
and .

Example:

>>> from collections import deque
>>> d = deque('ghi')                 # make a new deque with three items
>>> for elem in d                   # iterate over the deque's elements
...     print(elem.upper())
G
H
I

>>> d.append('j')                    # add a new entry to the right side
>>> d.appendleft('f')                # add a new entry to the left side
>>> d                                # show the representation of the deque
deque()

>>> d.pop()                          # return and remove the rightmost item
'j'
>>> d.popleft()                      # return and remove the leftmost item
'f'
>>> list(d)                          # list the contents of the deque

>>> d                             # peek at leftmost item
'g'
>>> d-1                            # peek at rightmost item
'i'

>>> list(reversed(d))                # list the contents of a deque in reverse

>>> 'h' in d                         # search the deque
True
>>> d.extend('jkl')                  # add multiple elements at once
>>> d
deque()
>>> d.rotate(1)                      # right rotation
>>> d
deque()
>>> d.rotate(-1)                     # left rotation
>>> d
deque()

>>> deque(reversed(d))               # make a new deque in reverse order
deque()
>>> d.clear()                        # empty the deque
>>> d.pop()                          # cannot pop from an empty deque
Traceback (most recent call last):
    File "<pyshell#6>", line 1, in -toplevel-
        d.pop()
IndexError: pop from an empty deque

>>> d.extendleft('abc')              # extendleft() reverses the input order
>>> d
deque()

Sketchfab Store

Whether you’re making a game, VR simulation, or augmented reality project, you can find quality assets using Sketchfab.

With Sketchfab you can preview 3D models right in the browser, meaning that what you see is what you get. It’s a great feature that I’ve yet to find on many websites.

The prices are reasonable and their assets are tailored for an assortment of applications.

Sketchfab is also home to a large community of artists and other supporters of 3D design and graphics. They offer tutorials, contests, and an active forum.

In an effort to preserve cultural heritage Sketchfab has teamed up with universities and museums to create 3D scans of real-world artifacts. They chronicle this ongoing journey to use digital technology as way of preserving objects into a digital format forever.

Data pre-processing and data augmentation

In order to make the most of our few training examples, we will «augment» them via a number of random transformations, so that our model would never see twice the exact same picture. This helps prevent overfitting and helps the model generalize better.

In Keras this can be done via the class. This class allows you to:

  • configure random transformations and normalization operations to be done on your image data during training
  • instantiate generators of augmented image batches (and their labels) via or . These generators can then be used with the Keras model methods that accept data generators as inputs, , and .

Let’s look at an example right away:

These are just a few of the options available (for more, see the documentation). Let’s quickly go over what we just wrote:

  • is a value in degrees (0-180), a range within which to randomly rotate pictures
  • and are ranges (as a fraction of total width or height) within which to randomly translate pictures vertically or horizontally
  • is a value by which we will multiply the data before any other processing. Our original images consist in RGB coefficients in the 0-255, but such values would be too high for our models to process (given a typical learning rate), so we target values between 0 and 1 instead by scaling with a 1/255. factor.
  • is for randomly applying shearing transformations
  • is for randomly zooming inside pictures
  • is for randomly flipping half of the images horizontally —relevant when there are no assumptions of horizontal assymetry (e.g. real-world pictures).
  • is the strategy used for filling in newly created pixels, which can appear after a rotation or a width/height shift.

Now let’s start generating some pictures using this tool and save them to a temporary directory, so we can get a feel for what our augmentation strategy is doing —we disable rescaling in this case to keep the images displayable:

Here’s what we get —this is what our data augmentation strategy looks like.

Where to find mockups

A mockup is a full-size model of a design or product used for presentations or other purposes. Think of it as a means of showing off what your design will actually look like when it’s put out into the real world, so we want them to look great. & mockup asset resources that we recommend are:

61. Freedesignresources.net

Linked to numerous design sites, freedesignresources offers some great choices, especially in product design. Filter through commercial, personal or 100% free licenses, you click on the product that is appropriate and are given further useful information on usage.

Type: Free, Personal or Commercial licenses depending on each design

62. Freebiesbug.com

Template, icons, fonts, etc plus mockups. A great collection of free PSD mockups to showcase your apps and websites. Each mockup contains the addition info required

Type: Free

63. Unblast.com

A fantastic collection of free PSD mockups including phone mockups, packages, apparels, flyers, posters etc. Check them out.

Type: Free

64. Pixeden.com

A wide selection of fully layered PSD mock-ups with smart objects to make the creation of your mock-up template just a quick drag and drop affair.

Type: Free or Premium ($6 per month)

65. Free-mockup.com

A large source of PSD mockkups especially photorealistic ones. Simply guide through product categories, and click to download.

Type: Free or premium

A paid-for instant mockup generator with over 21,000 different mockups.

Type: $14.95 per month or $99.95 per year.

67. Mockupworld.co

A handpicked section of mockups from designers and agencies all over the world. Each item is featured together with a preview image or gallery, a detailed description and a link that leads right to the download page. You can use the directory to quickly navigate to the desired category of motive. All mockups are in layered files and equipped with smart objects for quick drag and drop editing.

Type: Mockup World directory is free of charge and only lists images that may be used for private and commercial purposes without any restrictions.

Share Your 3D Printer Projects With the World

Now that you’ve got a bunch of really amazing 3D printed projects completed, why not showcase your best 3D prints? We’d recommend an online portfolio website that has a variety of stylish templates to choose from (so you can find one that fits with your brand identity) and offers a free trial (that way, you can make sure it has all the features you need). With all the cool things to 3D print, you’ll be able to update your portfolio with a wide variety of products. Once clients see all your 3D printer designs, they’ll be clamoring to have you print something magical just for them.

Now get out there, get creative, and start turning heads with amazing 3D creations!

Need some more design project inspiration? How to Start a Creative Project by ADAMJK
5 Ways to Fund Your Personal Project
10 Steps to Building Your Perfect Online Portfolio

Convolutional Neural Networks

Convolutional Neural Networks (CNNs) is the most popular neural network model being used for image classification problem. The big idea behind CNNs is that a local understanding of an image is good enough. The practical benefit is that having fewer parameters greatly improves the time it takes to learn as well as reduces the amount of data required to train the model. Instead of a fully connected network of weights from each pixel, a CNN has just enough weights to look at a small patch of the image. It’s like reading a book by using a magnifying glass; eventually, you read the whole page, but you look at only a small patch of the page at any given time.

Consider a 256 x 256 image. CNN can efficiently scan it chunk by chunk — say, a 5 × 5 window. The 5 × 5 window slides along the image (usually left to right, and top to bottom), as shown below. How “quickly” it slides is called its stride length. For example, a stride length of 2 means the 5 × 5 sliding window moves by 2 pixels at a time until it spans the entire image.

A convolution is a weighted sum of the pixel values of the image, as the window slides across the whole image. Turns out, this convolution process throughout an image with a weight matrix produces another image (of the same size, depending on the convention). Convolving is the process of applying a convolution.

The sliding-window shenanigans happen in the convolution layer of the neural network. A typical CNN has multiple convolution layers. Each convolutional layer typically generates many alternate convolutions, so the weight matrix is a tensor of 5 × 5 × n, where n is the number of convolutions.

As an example, let’s say an image goes through a convolution layer on a weight matrix of 5 × 5 × 64. It generates 64 convolutions by sliding a 5 × 5 window. Therefore, this model has 5 × 5 × 64 (= 1,600) parameters, which is remarkably fewer parameters than a fully connected network, 256 × 256 (= 65,536).

The beauty of the CNN is that the number of parameters is independent of the size of the original image. You can run the same CNN on a 300 × 300 image, and the number of parameters won’t change in the convolution layer.

6. BIM-Object, The Intelligent Object Library

BIM-Object ( https://www.bimobject.com )  is similar to Polantis in that it offers downloadable objects that can actually be purchased. But where the difference is widening, is that as its name suggests, BIM-Object offers objects stamped BIM.

The definition of BIM is quite complex but to put it simply, a BIM object is not just a simple 3D object made up of polygons, it is also a real mine of information which can contain data on the material used on the object, its price, the name of its manufacturer, its date of manufacture etc. It is a real intelligent object.

The objects can be used in most software that supports BIM technology, namely Archicad, Revit and Solidworks. For those who want to go further, I wrote an analysis on these three software.

Modeling Process

3D polygonal modeling of a human face.

There are Three popular ways to represent a model:

  1. Polygonal modeling — Points in 3D space, called vertices, are connected by line segments to form a polygonal mesh. The vast majority of 3D models today are built as textured polygonal models, because they are flexible and because computers can render them so quickly. However, polygons are planar and can only approximate curved surfaces using many polygons.
  2. Curve modeling — Surfaces are defined by curves, which are influenced by weighted control points. The curve follows (but does not necessarily interpolate) the points. Increasing the weight for a point will pull the curve closer to that point. Curve types include Nonuniform rational B-spline (NURBS), Splines, Patches and geometric primitives
  3. Digital sculpting — Still a fairly new method of modeling, 3D sculpting has become very popular in the few short years it has been around.[] There are currently 3 types of digital sculpting: Displacement, which is the most widely used among applications at this moment, volumetric and dynamic tessellation. Displacement uses a dense model (often generated by Subdivision surfaces of a polygon control mesh) and stores new locations for the vertex positions through use of a 32bit image map that stores the adjusted locations. Volumetric which is based loosely on Voxels has similar capabilities as displacement but does not suffer from polygon stretching when there are not enough polygons in a region to achieve a deformation. Dynamic tesselation Is similar to Voxel but divides the surface using triangulation to maintain a smooth surface and allow finer details. These methods allow for very artistic exploration as the model will have a new topology created over it once the models form and possibly details have been sculpted. The new mesh will usually have the original high resolution mesh information transferred into displacement data or normal map data if for a game engine.

The modeling stage consists of shaping individual objects that are later used in the scene. There are a number of modeling techniques, including:

  • constructive solid geometry
  • implicit surfaces
  • subdivision surfaces

Modeling can be performed by means of a dedicated program (e.g., form•Z, Maya, 3DS Max, Blender, Lightwave, Modo, solidThinking) or an application component (Shaper, Lofter in 3DS Max) or some scene description language (as in POV-Ray). In some cases, there is no strict distinction between these phases; in such cases modeling is just part of the scene creation process (this is the case, for example, with Caligari trueSpace and Realsoft 3D).

Complex materials such as blowing sand, clouds, and liquid sprays are modeled with particle systems, and are a mass of 3D coordinates which have either points, polygons, texture splats, or sprites assigned to them.

Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
3D-тест
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: