Both the scene and workspace had an active view layer, and it was confusing which settings were being used or displayed where. Now we always have one, so there is no mismatch. The "View Layers" tab in the properties editor is now "View Layer", no longer showing a list of layers. Instead view layers can be added and removed with the workspace view layer selector. They are also listed and selectable in the outliner. Single layer rendering uses the active view layer from the workspace. This fixes bugs where the wrong active view layer was used, but more places remain that are wrong and are now using the first view layer in the scene. These are all marked with BKE_view_layer_context_active_PLACEHOLDER.
101 lines
4.4 KiB
C++
101 lines
4.4 KiB
C++
/*
|
|
* ***** BEGIN GPL LICENSE BLOCK *****
|
|
*
|
|
* This program is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU General Public License
|
|
* as published by the Free Software Foundation; either version 2
|
|
* of the License, or (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, write to the Free Software Foundation,
|
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
*
|
|
* The Original Code is Copyright (C) 2010 Blender Foundation.
|
|
* All rights reserved.
|
|
*
|
|
* The Original Code is: all of this file.
|
|
*
|
|
* Contributor(s): none yet.
|
|
*
|
|
* ***** END GPL LICENSE BLOCK *****
|
|
*/
|
|
|
|
#ifndef __BKE_LINESTYLE_H__
|
|
#define __BKE_LINESTYLE_H__
|
|
|
|
/** \file BKE_linestyle.h
|
|
* \ingroup bke
|
|
* \brief Blender kernel freestyle line style functionality.
|
|
*/
|
|
|
|
#include "DNA_linestyle_types.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#define LS_MODIFIER_TYPE_COLOR 1
|
|
#define LS_MODIFIER_TYPE_ALPHA 2
|
|
#define LS_MODIFIER_TYPE_THICKNESS 3
|
|
#define LS_MODIFIER_TYPE_GEOMETRY 4
|
|
|
|
struct Main;
|
|
struct Object;
|
|
struct ColorBand;
|
|
struct bContext;
|
|
struct ViewLayer;
|
|
|
|
void BKE_linestyle_init(struct FreestyleLineStyle *linestyle);
|
|
FreestyleLineStyle *BKE_linestyle_new(struct Main *bmain, const char *name);
|
|
void BKE_linestyle_free(FreestyleLineStyle *linestyle);
|
|
void BKE_linestyle_copy_data(
|
|
struct Main *bmain, struct FreestyleLineStyle *linestyle_dst, const struct FreestyleLineStyle *linestyle_src,
|
|
const int flag);
|
|
FreestyleLineStyle *BKE_linestyle_copy(struct Main *bmain, const FreestyleLineStyle *linestyle);
|
|
|
|
void BKE_linestyle_make_local(struct Main *bmain, struct FreestyleLineStyle *linestyle, const bool lib_local);
|
|
|
|
FreestyleLineStyle *BKE_linestyle_active_from_view_layer(struct ViewLayer *view_layer);
|
|
|
|
LineStyleModifier *BKE_linestyle_color_modifier_add(FreestyleLineStyle *linestyle, const char *name, int type);
|
|
LineStyleModifier *BKE_linestyle_alpha_modifier_add(FreestyleLineStyle *linestyle, const char *name, int type);
|
|
LineStyleModifier *BKE_linestyle_thickness_modifier_add(FreestyleLineStyle *linestyle, const char *name, int type);
|
|
LineStyleModifier *BKE_linestyle_geometry_modifier_add(FreestyleLineStyle *linestyle, const char *name, int type);
|
|
|
|
LineStyleModifier *BKE_linestyle_color_modifier_copy(
|
|
FreestyleLineStyle *linestyle, const LineStyleModifier *m, const int flag);
|
|
LineStyleModifier *BKE_linestyle_alpha_modifier_copy(
|
|
FreestyleLineStyle *linestyle, const LineStyleModifier *m, const int flag);
|
|
LineStyleModifier *BKE_linestyle_thickness_modifier_copy(
|
|
FreestyleLineStyle *linestyle, const LineStyleModifier *m, const int flag);
|
|
LineStyleModifier *BKE_linestyle_geometry_modifier_copy(
|
|
FreestyleLineStyle *linestyle, const LineStyleModifier *m, const int flag);
|
|
|
|
int BKE_linestyle_color_modifier_remove(FreestyleLineStyle *linestyle, LineStyleModifier *modifier);
|
|
int BKE_linestyle_alpha_modifier_remove(FreestyleLineStyle *linestyle, LineStyleModifier *modifier);
|
|
int BKE_linestyle_thickness_modifier_remove(FreestyleLineStyle *linestyle, LineStyleModifier *modifier);
|
|
int BKE_linestyle_geometry_modifier_remove(FreestyleLineStyle *linestyle, LineStyleModifier *modifier);
|
|
|
|
bool BKE_linestyle_color_modifier_move(FreestyleLineStyle *linestyle, LineStyleModifier *modifier, int direction);
|
|
bool BKE_linestyle_alpha_modifier_move(FreestyleLineStyle *linestyle, LineStyleModifier *modifier, int direction);
|
|
bool BKE_linestyle_thickness_modifier_move(FreestyleLineStyle *linestyle, LineStyleModifier *modifier, int direction);
|
|
bool BKE_linestyle_geometry_modifier_move(FreestyleLineStyle *linestyle, LineStyleModifier *modifier, int direction);
|
|
|
|
void BKE_linestyle_modifier_list_color_ramps(FreestyleLineStyle *linestyle, ListBase *listbase);
|
|
char *BKE_linestyle_path_to_color_ramp(FreestyleLineStyle *linestyle, struct ColorBand *color_ramp);
|
|
|
|
bool BKE_linestyle_use_textures(FreestyleLineStyle *linestyle, const bool use_shading_nodes);
|
|
|
|
void BKE_linestyle_default_shader(const struct bContext *C, FreestyleLineStyle *linestyle);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* __BKE_LINESTYLE_H__ */
|