Skip to main content

Advertisement

Log in

Multiple-process procedural texture

  • Original Article
  • Published:
The Visual Computer Aims and scope Submit manuscript

Abstract

Our newly developed generation of procedural textures (GPT) system automatically generates procedural textures for the computer graphics industry. The system makes use of hybrid parallel Monte Carlo tree search and gender-based genetic algorithm modules that share a common multiple-generation population of procedural textures and a knowledge database. It also uses a multi-objective fitness function. The parallel Monte Carlo tree search module was inspired by gaming algorithms. To speed up the search, this module is enhanced with knowledge from previous successfully created procedural textures or tree node analyses. The gender-based genetic algorithm module automatically simulates several key features in natural selection and uses a multiple-generation breeding population, the notion of gender, and the concept of aging. This maintains diversity while providing many breeding opportunities for highly successful offspring. A third module selects generated shaders from the multiple-generation population and mutates them by replacing nodes with subtrees using the knowledge database. We evaluated the fitness quality of each module and compared the fitness quality of the system running in both single- and multiple-process mode. The optimal fitness quality was achieved by executing the system in multiple-process mode using a hybrid of these modules. We give examples of the GPT running in interactive mode, where a user directs the search towards the desired look using an esthetic evaluation.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22

Similar content being viewed by others

References

  1. Upstill, S.: The RenderMan Companion, A Programmer’s Guide to Realistic Computer Graphics. Addison-Wesley Publishing Company, Boston (1989)

    Google Scholar 

  2. Ibrahim, A.E.M.: Evolutionary techniques for procedural texture automation. In: 9th International symposium on visual computing, pp. 2,623–2,632. Springer Verlag, Heidelberg (2013)

  3. Lagae, A., Lefebvre, S., Cook, R., DeRose, T., Drettakis, G., Ebert, D.S., Lewis, J.P., Perlin, K., Zwicker, M.: A survey of procedural noise functions. Comput. Graph. Forum 29, 2579–2600 (2010)

    Article  Google Scholar 

  4. Sims, K.: Artificial evolution for computer graphics. Comput. Graph. 25, 319–328 (1991)

    Article  Google Scholar 

  5. Wiens, A., Ross, B.J.: Gentropy: evolutionary 2D texture generation. In: Genetic and Evolutionary Computation Conference, pp. 418–424 (2000)

  6. Ross, B.J., Zhu, H.: Procedural texture evolution using multi-objective optimization. New Gener. Comput. 22, 271–293 (2004)

    Article  MATH  Google Scholar 

  7. Bouroque, E., Dudek, G.: Procedural texture matching and transformation. Comput. Graph. Forum 23, 461–468 (2004)

    Article  Google Scholar 

  8. Shen, J., Jin, X., Mao, X., Feng, J.: Deformation-based interactive texture design using energy optimization. Vis. Comput. 23, 631–639 (2007). doi:10.1007/s00371-007-0154-3

    Article  Google Scholar 

  9. Wang, J., Sun, J.: A procedural texture generation method based on genetic programming. In: Proc. SPIE 5444, Fourth International Conference on Virtual Reality and Its Applications in Industry (2004). doi:10.1117/12.561110

  10. Bergen, S., Ross, B.J.: Evolutionary art using summed multi-objective ranks. In: Genetic Programming Theory and Practice VIII, Genetic and Evolutionary Computation, vol. 8, pp. 227–244 (2011)

  11. Ebner, M., Reinhardt, M., Albert, J.: Evolution of vertex andpixel shaders. In: Genetic Programming, Lecture Notes in ComputerScience, pp. 261–270. Springer, Heidelberg (2005)

  12. Howlett, A., Colton, S., Browne, C.: Evolving pixel shaders for the prototype video game subversion. In: The Thirty Sixth Annual Convention of the Society for the Study of Artificial Intelligence and Simulation of Behaviour AISB’10 (2010)

  13. Turk, G.: Generating textures on arbitrary surfaces using reaction-diffusion. In: Proceedings of the 18th Annual Conference on Computer Graphics and Interactive Techniques, pp. 289–298 (1991)

  14. Witkin, A., Kass, M.: Reaction-diffusion textures. In: Proceedings of the 18th Annual Conference on Computer Graphics and Interactive Techniques, pp. 299–308 (1991)

  15. Allegorithmic’s Substance Designer (2016). https://www.allegorithmic.com/products/substance-designer. Accessed 9 July 2016

  16. FxGen page (2016). https://sourceforge.net/projects/fxgen/ Accessed 9 July 2016

  17. McGuire, M., Stathis, G., Pfister, H., Krishnamurthi, S.: Abstract shade trees. In: Proceedings of the Symposium on Interactive 3D Graphics and Games, pp. 79–86 (2006)

  18. Sitthi-Amorn, P., Modly, N., Weimer, W., Lawrence, J.: Genetic programming for shader simplification. In: ACM Transactions on Graphics. Proc, SIGGRAPH Asia (2011)

  19. McLeish, D.L.: Monte Carlo Simulation and Finance. Wiley, Hoboken (2005)

    MATH  Google Scholar 

  20. Lai, Y.C., Chou, H.T., Chen, K.W., Fan, S.: Robust and efficient adaptive direct lighting estimation. Vis. Comput. 31(1), 83–91 (2015)

    Article  Google Scholar 

  21. Cazenave, T.: Nested Monte-Carlo search. In: International Joint Conference on Artificial Intelligence IJCAI, pp. 456–461 (2009)

  22. Browne, C.B., Powley, E., Whitehouse, D., Lucas, S.M., Cowling, P.I., Rohlfshagen, P., Tavener, S., Perez, D., Samothrakis, S., Colton, S.: A survey of Monte Carlo tree search methods. IEEE Trans. Comput. Intell. AI Games 4, 1–43 (2012)

    Article  Google Scholar 

  23. Chaslot, G.: Monte-Carlo tree search. PhD Dissertation, Department of Knowledge Engineering, Maastricht University, The Netherlands (2010)

  24. Chen, K.-H., Zhang, P.: Monte-Carlo go with knowledge-guided simulations. ICGA J. 31, 67–76 (2008)

    Google Scholar 

  25. Chaslot, G.M.J.B., Winands, M.H.M., Van den Herik, H.J.: Parallel Monte-Carlo tree search. In: van den Herik, H., Xu, X., Ma., Z., Winands, M. (eds.) Proceedings of the Conference on Computers and Games, Lecture Notes in Computer Science, vol. 5131, pp. 60–71. Springer Verlag, Heidelberg (2008)

  26. Zitzler, E., Deb, K., Thiele, L.: Comparison of multiobjective evolutionary algorithms: empirical results. Evol. Comput. 8, 173–195 (2000). (MIT Press Journals)

    Article  Google Scholar 

  27. Goldberg, D.E.: Genetic Algorithms in Search, Optimization, and machine learning. Addison-Wesley Longman Publishing Co., Inc., Boston (1989)

    MATH  Google Scholar 

  28. Syswerda, G.: A study of reproduction in generational steady-state genetic algorithms. In: Rawlings, G.J.E. (ed.) Foundations of genetic algorithms. Morgan Kaufmann, San Mateo (1991)

    Google Scholar 

  29. Toffolo, A., Benini, E.: Genetic diversity as an objective in multi-objective evolutionary algorithms. Evol. Comput. 11, 151–167 (2003)

    Article  Google Scholar 

  30. Whitley, L.D.: The GENITOR algorithm and selection pressure: why rank-based allocation of reproductive trials is best. In: Schaffer, J. (ed.) Proc. of the Third Int. Conf. on Genetic Algorithms, pp. 116–121. Morgan Kaufmann Publishers, San Mateo (1989)

  31. Godart, C., Kruger, M.: A Genetic algorithm with parallel steady-state reproduction. In: Alliot, J. et al. (eds.) Artificial Evolution, European Conference. Springer-Verlag, Berlin, Heidelberg (1995)

  32. Cantú-Paz, E., Goldberg, D.E.: Are multiple runs of genetic algorithms better than one? In: Cantú -Paz, E., et al. (eds.) GECCO 2003, LNCS 2723, pp. 801–812. Springer Verlag, Heidelberg (2003)

  33. Nicoară, E.S.: Mechanisms to Avoid the Premature Convergence of Genetic Algorithms. Universitatea Petrol-Gaze din Ploieti. Matematica-Informatic-Fizica LXI, vol. 1, pp. 87–96 (2009)

  34. Ebert, D.S., Musgrave, F.K., Peachy, D., Perlin, K., Worley, S.: Texturing and Modeling, A Procedural Approach, 3rd edn. Morgan Kaufmann Publishers, San Francisco (2002)

    Google Scholar 

  35. GPT’s ShaderBank digital collection. Keywords: ShaderBank collection (2016). http://www.turbosquid.com. Accessed 8 July 2016

  36. Whitehouse, D., Cowling, P., Powley, E., Rollason, J.: Integrating Monte Carlo tree search with knowledge-based methods to create engaging play in a commercial mobile game. In: 9th Conference on Artificial Intelligence and Interactive Digital Entertainment (AIIDE), pp. 100–106 (2013)

  37. Boudt, K., Cornelissen, K., Croux, C.: The Gaussian rank correlation estimator: robustness properties. Stat. Comput. 2, 471–483 (2012)

    Article  MATH  MathSciNet  Google Scholar 

  38. Jacobs, C.E., Finkelstein, A., Salesin, D.H.: Fast multiresolution image querying. In: Computer Graphics (SIGGRAPH’95 Proceedings) (1995)

  39. Selvarajah, S., Kodituwakku, S.R.: Analysis and comparison of texture features for content based image retrieval. Int. J. Latest Trends Comput. 2, 108–113 (2011)

    Google Scholar 

  40. Zhang, D., Wong, A., Indrawan, M., Lu, G.: Content-based image retrieval using gabor texture features. In: Proc. Pacific-Rim Conference on Multimedia, Sydney, pp. 392–395 (2000)

  41. Wei, L-Y., Lefebvre, S., Kwatra, V., Turk, G.: State of the art in example-based texture synthesis. In: Eurographics, State ofthe Art Report, EG-STAR. Eurographics Association, Munich, pp. 93–117 (2009)

  42. Lagae, A., Lefebvre, S., Drettakis, G., Dutre, P.: Procedural noise using sparse Gabor convolution. ACM Trans. Graph. 28, 54 (2009)

    Article  Google Scholar 

  43. Han, J., Zhou, K., Wei, L.-Y., Gong, M., Bao, H., Zhang, X., Guo, B.: Fast example-based surface texture synthesis via discrete optimization. Vis. Comput. Int. J. Comput. Graph. 22, 918–925 (2006). doi:10.1007/s00371-006-0078-3

    Google Scholar 

  44. Shen, J., Jin, X., Mao, X., Feng, J.: Completion-based texture design using deformation. Vis. Comput. Int. J. Comput. Graph. 22, 936–945 (2006). doi:10.1007/s00371-006-0079-2

    Google Scholar 

  45. Shen, J., Jin, X., Mao, X., Feng, J.: Deformation-based interactive texture design using energy optimization. Vis. Comput. Int. J. Comput. Graph. 23, 631–639 (2007). doi:10.1007/s00371-007-0154-3

    Google Scholar 

Download references

Acknowledgments

I would like to thank Dr. Donald H. House, Chairman of the Division of Visual Computing, School of Computing at Clemson University for his generous contributions towards this research work. Dr. Meghan Stephens assisted me with language editing.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Alaa Eldin M. Ibrahim.

Appendix: Examples of surface/displacement mapping RenderMan shaders produced by GPT

Appendix: Examples of surface/displacement mapping RenderMan shaders produced by GPT

See Fig. 22.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Ibrahim, A.E.M. Multiple-process procedural texture. Vis Comput 33, 1511–1528 (2017). https://doi.org/10.1007/s00371-016-1295-z

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00371-016-1295-z

Keywords

Navigation