Image generating engine capable of generating images for a host application from procedural data in the form of sequential graphs comprising simple nodes, intermediate result nodes and final result nodes, comprising: - at least one microprocessor; - a list of instructions; - a sequential procedural graph traversal module for generating images, adapted to receive from a host application at least one sequential procedural graph G for generating images and traversing this graph, and at least one list LO of renders containing the requests for images to be generated received by the host application and that have not yet been satisfied; - a module for calculating intermediate results, making it possible to calculate intermediate results corresponding to nodes of the sequential procedural graph for generating images; - a module for calculating rendering times of intermediate results; - a memory module for storing the sequential procedural graph G for generating images; - a memory module storing the list LO; - a memory module for storing a list L1 of intermediate results; - a memory module for storing a list L2 of rendering times of the intermediate results; characterized in that it further comprises: - a module for calculating the weights of the intermediate results making it possible to associate to each intermediate result a weight indicating the potential interest for conserving this intermediate result to reduce the generation time of subsequent images; - a memory module for storing a list L3 of the weights of the intermediate results; - a memory module for storing a list M of intermediate result images; - a comparison and deletion module making it possible, once each intermediate result has been allocated a weight, for the list L1 of intermediate results to be sorted by weight order so as to suppress the least relevant results. - at least one microprocessor; - a list of instructions; - a sequential procedural graph traversal module for generating images, adapted to receive from a host application at least one sequential procedural graph G for generating images and traversing this graph, and at least one list LO of renders containing the requests for images to be generated received by the host application and that have not yet been satisfied; - a module for calculating intermediate results, making it possible to calculate intermediate results corresponding to nodes of the sequential procedural graph for generating images; - a module for calculating rendering times of intermediate results; - a memory module for storing the sequential procedural graph G for generating images; - a memory module storing the list LO; - a memory module for storing a list L1 of intermediate results; - a memory module for storing a list L2 of rendering times of the intermediate results; - a module for calculating the weights of the intermediate results making it possible to associate to each intermediate result a weight indicating the potential interest for conserving this intermediate result to reduce the generation time of subsequent images; - a memory module for storing a list L3 of the weights of the intermediate results; - a memory module for storing a list M of intermediate result images; - a comparison and deletion module making it possible, once each intermediate result has been allocated a weight, for the list L1 of intermediate results to be sorted by weight order so as to suppress the least relevant results.