Civil engineering field uses many different computer technologies. Mainly these are technologies for analysis of the already defined ideas and those which help with the presentation and documentation of said ideas. However, recent development in the artificial intelligence and related fields opens the possibility for the computer to independently generate solutions. One such approach is the generative design. The thesis outlines the theoretical basis of this method, which is then applied to the practical example of the shading elements for the building in Revit. Real engineering example of the energy efficient shading has been simplified and conformed to the Dynamo programming environment in which the visual programming will be presented. In order to find the optimal solution, it is necessary to select and define the input variables and objectives with fitness functions. In the generative design process, the solutions are generated, tested and sorted by genetic algorithms, and with each new iteration we get closer to the optimal solution. They generate and analyze the solution space, to find the final solution autonomously or with the help of an engineer. We compare this process with the design approach and outline the pros and cons of the generative approach. The main idea of the generative design is the collaboration between the designer and the machine, which has complementary capabilities, such as: sorting large amount of data, generating large number of alternatives, analysis of the solutions and iterative improvement of the solution. The approach is general and can be used to help with the designs in other areas of civil engineering.